0

49152 バイト/ブロックの共有メモリを持つ GTX Titan があります。~9000 の結合 ODE を解こうとしており、各濃度の変化率を計算するために、これらの ~9000 の濃度 (倍精度) を共有メモリに格納したいと考えています。

double は 8 バイトであり、49152/8 = 6144 であるため、これは不可能であることを断言したいと思います。

4

2 に答える 2

1

あなたの理解は正しいです。double単一のスレッドブロック (つまり、単一の SM) からアクセスできる共有メモリに9000 個の数量を同時に格納することはできません。

于 2013-10-07T01:53:41.043 に答える
-1

レジスタファイルも使える!その部分は、SM ごとの共有メモリの重要な部分を持つことができます。コア/ストリーミング ユニットのレジスタ空間にあるプライベート変数は、「ローカル メモリでのスワップ」方式で使用して、同じブロック内の他のコアと通信できます。レジスタ スワッピングは、titan の sm あたり 48kB の共有メモリを補うことができます。

于 2013-10-07T07:39:20.863 に答える