AIハードウェアとソフトウェアスタック
AIのソフトウェアスタックを、利用者に近い上の層からハードウェアに近い下の層へ並べたものとして正しいものはどれか。
- Aフレームワーク(PyTorchなど) → コンパイラやランタイム → 演算のライブラリ(cuBLASなど) → ドライバ → ハードウェア
- Bハードウェア → フレームワーク → ドライバ → ライブラリ
- Cドライバ → フレームワーク → ハードウェア → コンパイラ
答えと解説を見る
正解:A. フレームワーク(PyTorchなど) → コンパイラやランタイム → 演算のライブラリ(cuBLASなど) → ドライバ → ハードウェア
利用者はPyTorchなどのフレームワークでモデルを書きます。フレームワークやAIコンパイラ・ランタイムが計算グラフを最適化し、行列の積や畳み込みなどは高度に最適化された演算のライブラリのカーネルを呼びます。ライブラリはドライバを通してGPUやNPUに命令を送ります。新しいハードウェアが広く使われるには、演算器の性能だけでなく、この積み重なったソフトウェアが整っていることが欠かせません。
- A. 正しい。各層が下の層の違いを隠しています。
- B. 順番が合っていません。
- C. 順番が合っていません。