AI向けコンパイラとは モデルを各社の半導体向けに組み直すソフト
AI向けのコンパイラは、AIのモデルの計算をまとめて読み取り、半導体ごとの速い命令に組み直すソフトです。PyTorchの開発陣によると、新しい言語Helionの自動設定は、vLLMの手書きのCUDAの部品より1.27倍速く動きました。
- AI向けのコンパイラは、モデルの計算を半導体ごとの速い命令に変えるソフトです。
- 計算をつなげて一度に処理する「融合」と、半導体に合わせた区切り方の調整が主な仕事です。
- 代表例は、PyTorchのtorch.compile(中の部品はInductor)、グーグルのXLA、OpenAIが始めたTritonです。
- IBMは、PyTorchのコンパイラを使うことで、自社の半導体向けのコードを7分の1に減らしたとしています。
AI向けのコンパイラは、PyTorchやJAXで書いたモデルを、GPUやTPU、各社の専用半導体で速く動く命令に変えるソフトです。人が書いた計算の手順を、半導体の得意な形に並べ直します。
計算をまとめ、区切りを決める
AIのモデルは、行列の掛け算、足し算、活性化関数などの小さな計算の連なりです。1つずつ半導体に送ると、そのたびにメモリとの読み書きが起き、時間がかかります。
コンパイラはまず、モデル全体を計算の流れの図(グラフ)として読み取ります。次に、続けて行える計算を1つの部品にまとめます。これを「融合」と呼び、メモリの往復を減らせます。最後に、データをどの大きさの区画に分けて、何本の処理で同時に回すかを決めます。この区切り方は半導体ごとに最適な値が違います。
区切り方の候補は多く、実際に何通りも動かして速いものを選ぶ「自動調整」がよく使われます。ただ、手間がかかります。
主なコンパイラと言語
| 名前 | 中心になる組織 | 役割 |
|---|---|---|
| torch.compile(Inductor) | PyTorch(メタなど) | PyTorchのモデルをまとめて速くする |
| XLA | グーグルなど | JAXなどの計算をCPU・GPU・TPU向けにする |
| Triton | OpenAIが開始 | GPUの計算部品をPythonに近い形で書く言語 |
| Helion | PyTorch | Tritonの上で、さらに短く部品を書く言語 |
| CuTeDSL | エヌビディア | エヌビディアのGPU向けの部品の記述言語 |
| FlyDSL | AMD | AMDのGPU向けの部品の記述言語 |
2026年10月28日に出たPyTorch 2.15版では、AMDのMI355X世代(gfx950)向けに、InductorがFlyDSLの部品を自動調整の候補に入れるようになりました。エヌビディアのBlackwell向けには、CuTeDSLで書いた行列計算の部品(NVGEMM)を4ビットの計算に合わせて調整しています。
自動調整を省く試み
PyTorchの開発陣は2026年11月12日、Helionで自動調整をせずに設定を決める方法を公表しました。以前は、1つの注意機構の部品を72通りの形で調整するのに、簡易の調整でも10時間かかった例があるといいます。
新しい方法は、コンパイルの時点で部品の中身を分析し、設定を直接決めます。エヌビディアのH100で、vLLMの手書きのCUDAの部品と比べて1.27倍、公開の手書きのTriton部品集(FLA)と比べて1.18倍の速さでした。分析にかかる時間は数十ミリ秒です。H100とB200では標準でこの方法が有効になっています。
新しい半導体の入り口
コンパイラは、新しい半導体の会社にとって、既存のAIのソフトを動かす入り口になります。PyTorch Foundationによると、IBMは自社のAI向け半導体「Spyre」のソフトでPyTorchのコンパイラを広げ、Spyre専用のコンパイラのコードを7分の1に減らしました。44の部品と約1万行のコードで、数千のモデルに対応したとしています。AWSは自社のTrainium向けに「TorchNeuron」を公開し、torch.compileにも対応させました。
関連する用語
- カーネル:半導体の上で動かす計算の部品。
- 融合(フュージョン):複数の計算を1つの部品にまとめること。
- 自動調整(オートチューニング):設定の候補を実際に動かして速いものを選ぶこと。
- MLIR:コンパイラを作るための共通の土台。IBMのSpyreの部品も使う。
Helionの新しい設定の方法は、H100とB200のTritonの経路で評価され、ほかの半導体向けの調整はこれからです。
この記事は公開資料をもとに作成しています。売買をすすめるものではありません。誤りを見つけたら訂正します(編集方針)。
関連する記事
PyTorchとは AIの学習と推論を書く道具、最新2.15版は583人が開発に参加
PyTorch(パイトーチ)は、AIのモデルをPythonで組み立て、GPUなどで学習・推論させるための公開のソフトです。2026年10月28日に出た2.15版には、583人から3,117件の変更が入りました。
JAXとは 関数を変換して速くするAIの道具、TPUの9216チップ構成も視野
JAX(ジャックス)は、Pythonで書いた配列の計算を、コンパイルや自動微分の形に変換して速く動かす公開のライブラリです。同じコードがCPU、GPU、グーグルのTPUで動き、2026年10月23日に0.12.0.1版が出ました。
TensorRTとは 学習済みモデルをGPU向けに作り直す推論の道具
TensorRTは、学習済みのAIのモデルを、エヌビディアのGPUで速く答えを出せる形に変えるソフトの一式です。エヌビディアは、CPUだけで動かす場合に比べ推論を36倍速くできるとしています。
建設のリードタイムとは TSMC熊本は着工から開所まで約1年10か月、アリゾナは発表から量産まで約4年半
建設のリードタイムとは、工場やデータセンターの着工から稼働までにかかる時間です。TSMCの熊本の第1工場は2022年4月に着工し、2024年2月に開所式を開きました。