AIハードウェアとソフトウェアスタック

分散学習で使われるオールリデュース(All-Reduce)の通信の働きとして正しいものはどれか。

  1. A1つのGPUのデータを消して、メモリを空ける
  2. B全GPUが持つ値(勾配など)を合計し、その合計をすべてのGPUに配る
  3. C全GPUの電源を一斉に切る
答えと解説を見る

正解:B. 全GPUが持つ値(勾配など)を合計し、その合計をすべてのGPUに配る

オールリデュースは、各GPUが持つ同じ形のテンソルを要素ごとに足し合わせ(リデュース)、その結果を全GPUが受け取る通信です。GPUを輪のようにつないで、データを細かく分けながら隣へ渡していく方法(リングオールリデュース)では、GPUの数が増えても1台あたりの通信の量がほぼ一定に保たれます。データ並列の学習では、毎回の勾配の平均にこの通信を使います。

  • A. データを消す処理ではありません。
  • B. 正しい。データ並列の勾配の平均に使います。
  • C. 電源の操作ではありません。
この分野を解く 分野ページへ

AIハードウェアとソフトウェアスタックのほかの問題

  1. 学習で使われる勾配チェックポイント(活性化の再計算)の説明として正しいものはどれか。
  2. AI向けのアクセラレータで使われるシストリックアレイが、行列の積を効率よく計算できる主な理由はどれか。
  3. AI向けのアクセラレータが、チップの上に大きなSRAM(数十〜数百MB)を載せることがある主な理由はどれか。
  4. AIアクセラレータのデータフローの方式の1つ「ウェイトステーショナリ(重み固定)」の説明として正しいものはどれか。
  5. AIの推論をクラウドのサーバではなく、スマートフォンなどの端末の中(エッジ)で行う利点として当てはまらないものはどれか。