3

最近は、HPL コードを掘り下げて、HPL の基礎となる実装メカニズムを理解しようとしています。( http://www.netlib.org/benchmark/hpl/ )

現在、HPL_T_panel 構造体のいくつかのパラメーターについて少し混乱しています。(include/hpl_panel.h)。

A;                  /* ptr to trailing part of A */
* WORK;                              /* work space */
* L2;                                /* ptr to L */
* L1;                /* ptr to jb x jb upper block of A */ 
lda;                 /* local leading dim of array A */ 
ldl2;                /* local leading dim of array L2 */

いくつかの質問:

  1. 「lda」と「ldl2」の意味は何ですか? L2 の先頭の次元と行数の違いは何ですか?

  2. A、L1、L2 の値は? 言い換えれば、パネル分解の各反復後の L、U、およびサブマトリックスの正確なサイズは? 反復中にこれらの値を追跡しようとしましたが、パターンを知ることができません。

たとえば、HPL に次のパラメーターがあるとします。

N   1024  (matrix size)
NB 128    (block size)
PxQ 2x2   (process grid)

(src/pgesv/HPL_pdgesv0.c) を使用した「A の列のループ」では、各プロセスの各反復の A、L1、L2 の値は何ですか? ここで統計分析をしてもらえますか?インデックスや残りのマトリックス サイズなど。

誰か (HPL ソース コードに精通している) から何か提案があれば幸いです。

4

0 に答える 0