GPUプログラミング
CUDAのスレッドの階層の組み合わせとして正しいものはどれか(大きい順)。
- Aグリッド → ブロック → スレッド
- Bスレッド → ブロック → グリッド
- Cブロック → スレッド → グリッド
答えと解説を見る
正解:A. グリッド → ブロック → スレッド
カーネルを1回起動すると、全体がグリッドになり、グリッドは多数のブロックに、ブロックは多数のスレッドに分かれます。1つのブロックのスレッドは同じSM(演算器の集まり)で実行され、共有メモリで協力したり、同期を取ったりできます。異なるブロックは独立に実行されるので、GPUの規模に応じて同時に動くブロックの数が変わり、同じプログラムが大小のGPUで動きます。
- A. 正しい。1回の起動の全体がグリッドです。
- B. 小さい順になっています。
- C. 順番が合っていません。