【GPGPU】くだすれCUDAスレ pert4【NVIDIA】at TECH【GPGPU】くだすれCUDAスレ pert4【NVIDIA】 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト300:デフォルトの名無しさん 11/02/02 19:38:03 >>299 計測してパフォーマンスのいい方にすればいいとおもうが、 1の方があるスレッドブロックが同期待ちになってるあいだに他のスレッドブロックが 実行可能な余地があるぶん性能低下はしにくいと思う 301:デフォルトの名無しさん 11/02/02 20:23:06 >>300 回答ありです。 言葉足らずでした。。。 計測して実験したのですが、1のほうがパフォーマンスが上でした。 いい言葉が見つからないのですが、 1も2もブロック数は違うけど同じスレッド数ですので メモリ隠ぺいのためにスレッド数が多ければそれでいいと思っていたので 性能は同じになると思っていました。 スレッドブロックが同期待ちというのは、syncした場合におこる現象でしょうか? 調べてみましたがやはりSMあたりのスレッド数が同じなら SMあたりのスレッドブロック数が多いほうがいいというのが いまいちわかりません。。。 よろしくお願いします 302:デフォルトの名無しさん 11/02/02 20:35:42 >>301 __syncthreads(); はブロック内のスレッドを同期する。 全部のスレッドが1024として 1ブロック1024スレっどの場合、__syncthreads();すると全部のスレッドが同期される。 その間どのスレッドも実行できない。 4ブロックで1ブロック当たり256スレッドの場合、__syncthreads();しても256スレッドだけ同期されて 他の3ブロック分のスレッドは実行可能。 >SMあたりのスレッドブロック数が多いほうがいい スレッドブロックはSM単位に割り当てられるから「SMあたりのスレッドブロック数が多いほうがいい」 というのはActive Thread Blocks per Multiprocessorが高いほうがいいというのと同義 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch