AWS Neuron SDKは、AWSの機械学習チップ(InferentiaとTrainium)でモデルを学習・推論させるためのコンパイラ・ランタイム・ドライバ・ツールの一式です。2026年11月10日時点の最新バージョンは2.33.0で、Neuronのリリースノート上のリリース日は2026年10月19日、AWSのWhat’s Newでの発表は10月21日です。2025年12月の2.27.0でTrainium3に対応して以降、1〜2か月おきに版が上がっています。
既存環境の更新では、新機能に加えて、利用中のフレームワークやライブラリが更新先でも提供されるかを確認します。2.32.0ではPyTorch/XLA版のtorch-neuronxがDLAMIとコンテナから外れ、2.33.0ではネイティブPyTorchのTorchNeuronが公開ベータになりました。さらに2.33.0は、Trn2・Trn3でのNxD InferenceとPyTorch/XLA推論を次の2.34で終えると予告しています。本記事では、版ごとの変更点、2.33.0の部品の版、導入と版の確認方法、監視ツール、用途別に固定すべき版を、AWS公式のリリースノートに沿って整理します。チップ自体の性能や料金はAWS Trainiumとは?読み方・Trainium3の性能と料金、TorchNeuron対応と外販予定で扱っています。
まとめ:最新バージョン2.33.0と確認・更新の要点
- 最新はNeuron SDK 2.33.0(2026年10月19日)。コンパイラneuronx-cc 2.28.7631.0、NKI 0.7.0、ランタイム2.35.30.0、ドライバ2.31.7.0を含み、vLLM Neuronは0.29.0系、JAXは0.7.0〜0.10.0に対応する
- 2.33.0でTorchNeuron(ネイティブPyTorch)が公開ベータになった。対象はTrn2・Trn3、PyTorch 2.13と2.14。PyTorch/XLA版はPyTorch 2.9が最後で、使い続けるならtorch-neuronx 2.9(Neuron 2.31の版)に固定する
- Trn2・Trn3でのNxD Inference、PyTorch/XLAによる推論、vLLM NeuronのXLA経路は2.34で終了。推論はvLLM Neuronへ、モデルの構築はTorchNeuronの
torch.compileへ移す - Inf2・Trn1のNxD Inferenceは、2.33.0の告知ではNeuron SDK 2.31で保守モード(重大な不具合とセキュリティの修正のみ)が続く。新機能(TorchNeuron・vLLM Neuron・Neuron Observer)はTrn2・Trn3向け
- 版の確認は、Pythonパッケージを
pip list、ドライバやランタイムをapt list --installed、デバイスの認識をneuron-lsで行う。DLAMIはAMIの説明文にSDKの版が入っている - 2.33.0で、Trainiumの不調を1秒未満で検知するNeuron Observer(
nobs)が公開ベータになった。既存のneuron-monitorは引き続きサポートされ、移行は不要
AWS Neuron SDKの構成要素と対応インスタンス
Neuron SDKは単一のパッケージではなく、版番号の異なる部品の集合です。「2.33.0」は部品の組み合わせに付いた名前で、コンパイラやランタイムはそれぞれ別の版番号を持ちます。Neuronの公式リポジトリにある部品表(n2-manifest.json)が、SDKの版ごとの部品の版の正本です。
2.33.0に含まれる部品とその版
| 部品 | パッケージ名 | 2.33.0の版 | 役割 |
|---|---|---|---|
| Driver | aws-neuronx-dkms | 2.31.7.0 | カーネルドライバ |
| Runtime | aws-neuronx-runtime-lib | 2.35.30.0 | NEFFの読み込みと実行 |
| Collectives | aws-neuronx-collectives | 2.35.43.0 | チップ間・ノード間通信 |
| Tools | aws-neuronx-tools | 2.33.38.0 | neuron-ls・neuron-top等 |
| Compiler | neuronx-cc | 2.28.7631.0 | 計算グラフをNEFFへ変換 |
| NKI | nki | 0.7.0 | 独自カーネルの記述 |
| JAX連携 | jax_neuronx | 0.10.0.1.0.14198 | JAXからの呼び出し |
| PyTorch連携 | torch-neuronx | 2.14.3.0ほか | PyTorchからの呼び出し |
NEFF(Neuron Executable File Format)はコンパイル済みの実行ファイルです。ドライバとランタイムには組み合わせの制約があり、2.33.0でランタイムに入ったテンソル変換APIや、ホストとデバイス間の転送のプロファイリングにはDriver 2.31以降が要ります。リリースノートも「ランタイムと一緒にドライバを上げる」よう求めています。必要な互換条件を満たさない組み合わせではランタイムの初期化に失敗するため、部品の版はSDKの版単位でそろえて固定します。
対応インスタンスとNeuronLinkの有無
2.33.0の部品表では、ランタイムとコンパイラの対象はInf2・Trn1・Trn2・Trn3です。Inf1は旧系統のneuron-ccとtorch-neuronで動かす世代で、関連ドキュメントの多くはアーカイブ扱いになっています。2.33.0で加わった機能(TorchNeuron・Neuron Observer・vLLM Neuron 0.29.0)は、いずれもTrn2とTrn3が対象です。
複数チップのインスタンスでは、チップ同士をNeuronLinkというチップ間接続でつなぎ、集団通信をこの経路で行います。Trn2のアーキテクチャ解説によると、Trn2の16チップ構成はNeuronLink-v3で接続され、Trn2 UltraServerは4台のtrn2u.48xlargeをNeuronLink-v3でつなぎます。一方でtrn2.3xlargeはTrainium2を1チップだけ積む開発・検証向けのサイズで、NeuronLinkもEFAも使いません。分散学習の動作確認をtrn2.3xlargeで済ませると通信まわりの問題が本番まで見えないため、集団通信を含む検証は複数チップのサイズで行います。
| 用途 | 2.33.0での選択肢 | 対象インスタンス |
|---|---|---|
| JAXで学習・推論 | JAX 0.7.0〜0.10.0 | Inf2・Trn1・Trn2・Trn3 |
| PyTorch(新方式) | TorchNeuron(公開ベータ) | Trn2・Trn3 |
| PyTorch/XLAで学習 | torch-neuronx 2.9 | Inf2・Trn1・Trn2・Trn3 |
| LLM推論 | vLLM Neuron(vLLM 0.29.0) | Trn2・Trn3 |
| LLM推論(旧系統) | NxD Inference(2.34で終了) | Trn2以降 |
| 独自カーネル | NKI 0.7.0 | Inf2・Trn1・Trn2・Trn3 |
OSは、Amazon Linux 2が2.33.0でサポート対象から外れ(2026年6月30日にサポート終了)、Amazon Linux 2023への移行が求められています。Ubuntu 22.04のDLAMIとコンテナは新しく公開されません。2.33.0のDLAMIはUbuntu 24.04と26.04の両方で出ており、コンテナ(DLC)はUbuntu 26.04版だけです。TensorFlowとMXNetのNeuron対応はアーカイブ扱いで、新規開発の選択肢には入りません。
Neuron SDKのバージョン履歴:2.27.0から2.33.0までの変更点
GitHubのaws-neuron/aws-neuron-sdkのリリース一覧をもとに、2.27.0以降の版を並べます。日付はNeuronのリリースノートの記載です。
| 版 | リリース日 | 主な変更 |
|---|---|---|
| 2.33.0 | 2026-10-19 | TorchNeuron公開ベータ/NKI 0.7.0 |
| 2.32.0 | 2026-08-17 | NKI 0.6.0/XLA版をDLAMIから除外 |
| 2.31.1 | 2026-08-12 | 2.31.0の不具合修正 |
| 2.31.0 | 2026-07-07 | NKI 0.5.0/新コード生成が既定 |
| 2.30.0 | 2026-05-21 | NKI 0.4.0/Ubuntu 24.04化 |
| 2.29.1 | 2026-05-01 | 不具合修正 |
| 2.29.0 | 2026-04-09 | NKI安定版/CPUシミュレータ |
| 2.28.1 | 2026-03-13 | 不具合修正 |
| 2.28.0 | 2026-02-26 | Neuron Explorerのシステム計測 |
| 2.27.1 | 2026-01-14 | 不具合修正 |
| 2.27.0 | 2025-12-19 | Trainium3対応/NKIの新コンパイラ |
2.27.0〜2.30.0:Trainium3対応とNKI安定版、旧系統の整理
2.27.0はTrainium3(Trn3)に初めて対応した版です。NKIの名前空間がneuronxcc.nki.*からnki.*へ移り、カーネル関数には@nki.jitが必須になりました。旧名前空間は2.30.0でコンパイルエラーになるため、2.27.0以前に書いたカーネルは最初にimport文を直します。コンパイラの--auto-castの既定も、行列演算だけをキャストする設定からnoneに変わっており、FP32のモデルで速度が落ちたら--auto-cast=matmultを明示すると、行列演算の自動キャストを以前の設定に戻せます。混合精度累積の既定も変更されているため、その設定も以前に戻す場合は--disable-mixed-precision-accumulationを併用します。
2.29.0ではNKI 0.3.0が安定版になり、Trainium無しでカーネルの正しさを確かめるCPUシミュレータが入りました。同じ版からPyTorch 2.7と2.8のサポートが終わり、NxD InferenceはTrn1とInf2の対応を外しています。学習ライブラリのNxDTと、推論のNxD Inference・NxD Coreの推論APIは2.30.0で保守モードに入りました。
2.31.0・2.32.0:vLLM Neuronへの移行とtorch-neuronxの除外
2.31.0ではコンパイラの新しいコード生成がTrn2・Trn3の既定になり、学習用のpytorch-training-neuronxコンテナの公開が止まりました。2026年7月20日には、NxD Inferenceに依存しないvLLMプラグインのvLLM Neuronがベータで公開されています。
2.32.0では、DLAMIとコンテナからNxD InferenceとNxD Coreが外れ、PyTorch 2.9のシングルフレームワークDLAMIとpytorch-inference-neuronxコンテナの公開も止まりました。必要なら2.31.0以前のDLAMIを使うよう、DLAMIのリリースノートは案内しています。NumPy 2.1のサポートも2.32.0で終わりました。
2.33.0:TorchNeuron公開ベータと2.34で終わる機能の予告
2.33.0の中心は、ネイティブPyTorchのバックエンドTorchNeuronの公開ベータです。パッケージ名は従来と同じtorch-neuronxのままで、2.13.3.0がPyTorch 2.13、2.14.3.0がPyTorch 2.14に対応し、Python 3.12〜3.14で動きます。DLAMIのリリースノートによると、torch-neuronx 2.14.3.0とTorchTitanを入れたDLAMIが新しく公開されました。そのほかの主な変更は次のとおりです。
- vLLM Neuronがvllm-neuron 0.29.0.1.2.0(vLLM 0.29.0)になり、
torch.compileが既定のコンパイル経路になった - 動画生成モデルWan2.2向けのvLLM Omni Neuron(ベータ)が初めてSDKに入った。DLAMIはUbuntu 24.04のみ
- NKI 0.7.0で、ジェネレータやクラス継承など通常のPythonをカーネルのメタプログラミングに使えるようになった
- int32からint8などへの整数の縮小変換が、飽和ではなくPyTorchやCPUと同じラップアラウンドになった
- 大きなNEFFの読み込みが最大6.7倍速くなった
2.33.0は次の版で終わるものも明示しました。Trn2・Trn3でのNxD InferenceとNxD Coreの推論API、PyTorch/XLAによる推論、vLLM NeuronのPyTorch/XLA経路は、2.34でサポートを終えます。2.32.0で「次の版で既定にする」と予告されていたコンパイラのネイティブint64実行(--native-int64=enabled)は、2.33.0でさらに次の版へ延期されました。今の挙動を保つには--native-int64=disabled --implicit-integer-downcast=allを明示しておきます。
TorchNeuron(ネイティブPyTorch)とPyTorch/XLA版の違い
Neuron SDKのPyTorch対応は、これまでPyTorch/XLAを経由するtorch-neuronxでした。PyTorch/XLAベースはPyTorch 2.9が最後で、2.33.0の時点でPyTorch 2.13以降のtorch-neuronxはTorchNeuronとして配布されています。PyTorch/XLA版の最新は、Neuron 2.31に含まれる2.9.0.2.15.32035のままです。
書き方の違いはデバイスの指定とグラフの区切り方に出ます。XLA版はデバイスをxm.xla_device()で取り、ステップごとにxm.mark_step()でグラフを切ります。TorchNeuronはPyTorchのPrivateUse1というデバイス拡張の仕組みでTrainiumを登録するため、"neuron"を通常のデバイス名として指定し、まとめてコンパイルしたい部分だけtorch.compile(model, backend="neuron", dynamic=False)に渡します。xm系の呼び出しは移行時にすべて書き換えが要るので、今XLA版で書くコードでは1つのモジュールに閉じ込めておくと修正範囲を絞れます。
TorchNeuronのリリースノートが挙げる初版の制約は、採用前に確認が必要です。動的シェイプは開発中で、torch.compileにはdynamic=Falseが必要になり、入力の形状が変わるたびに再コンパイルが走ります。torch.sparse・torch.func・torch.nested・torch.distributionsは使えず、TorchAOとの統合も入っていません。単体のwheelはUbuntu 26.04向けのみで、Ubuntu 22.04・24.04向けは次の版の予定です。24.04ではDLAMIを使うか、ソースからビルドします。インストールの具体的な手順と分散学習での使い方はTorchNeuronとは?TrainiumでPyTorchを動かす導入手順とXLA版からの移行【2026年10月】で扱っています。PyTorch本体の版の違いはPyTorchとは?読み方・できること・TensorFlowとの違いと入れ方【2.14対応】にまとめています。
Neuron Kernel Interface(NKI)の現状とカーネルの書き方
NKIは、NeuronCoreのメモリ配置や演算命令を直接指定してカーネルを書くためのPython DSLです。独自のAttentionやMoEの分配など、コンパイラが自動で詰めきれない演算を手で詰めるときに使います。2.29.0のNKI 0.3.0で安定版になり、2.33.0時点の最新はNKI 0.7.0です。
2.32.0のNKI 0.6.0では、GpSimdエンジンでのtop-K(nisa.topk)、rankごとにデータ長が異なる集団通信(all_gather_v)、データ依存のループ(fori_loop・while_loop)が加わりました。従来のnl.dynamic_rangeによるループは、2.33.0の既定フロントエンドでは使用できず、nl.fori_loopとnl.while_loopへの移行が改めて案内されています。NKI_COMPILER_FRONTEND=customは次の版で削除される予定です。将来の版でTrn2以降の既定のLNC(論理NeuronCoreの構成)が1から2に変わるため、今の挙動を保つならNEURON_LOGICAL_NC_CONFIG=1を設定します。GpSimdエンジン向けの旧来のカスタム演算ライブラリ(aws-neuronx-gpsimd-customop-lib)は2.33.0で保守モードに入り、独自演算はNKIで書くよう案内が変わりました。
NKIカーネルの基本形とCPUでの実行方法
公式クイックスタートの要素ごとの加算カーネルは、HBMからオンチップのSBUFへ入力を読み、演算し、結果をHBMへ書き戻す3段で書きます。
import nki
import nki.language as nl
import nki.isa as nisa
@nki.jit
def nki_tensor_add_kernel(a_input, b_input):
assert a_input.shape == b_input.shape
assert a_input.dtype == b_input.dtype
# このカーネルはタイル分割しないので、先頭次元はオンチップのタイル上限まで
assert a_input.shape[0] <= nl.tile_size.pmax
# HBMからSBUFへDMAでコピー
a_tile = nl.ndarray(shape=a_input.shape, dtype=a_input.dtype, buffer=nl.sbuf)
nisa.dma_copy(dst=a_tile, src=a_input)
b_tile = nl.ndarray(shape=b_input.shape, dtype=b_input.dtype, buffer=nl.sbuf)
nisa.dma_copy(dst=b_tile, src=b_input)
# 要素ごとの加算(第1引数が出力先)
c_tile = nl.ndarray(shape=a_input.shape, dtype=a_input.dtype, buffer=nl.sbuf)
nisa.tensor_tensor(dst=c_tile, data1=a_tile, data2=b_tile, op=nl.add)
# 結果をHBMへ書き戻して返す
c_output = nl.ndarray(dtype=a_input.dtype, shape=a_input.shape, buffer=nl.shared_hbm)
nisa.dma_copy(dst=c_output, src=c_tile)
return c_output
手元にTrainiumが無い段階では、NKI_SIMULATOR=1を設定するかnki.simulate(kernel)を使うとCPU上で実行でき、通常のPythonデバッガで値を確認できます。2.33.0では、固定サイズの集団通信カーネルも複数rankぶんCPUシミュレータで動かせるようになりました。nkiパッケージはNeuronのpipリポジトリでLinux x86_64向けにだけ配布されているため、macOSで試すならLinuxのコンテナかEC2の汎用インスタンスを用意します。
カーネルを自作する前に、NKI Libraryに同じ処理が無いか確認してください。2.30.0で22種、2.31.0で14種、2.32.0で13種、2.33.0で25種が追加され、DeepSeek-V3.2やQwen3.5向け、MXFP8のMoE学習向けのカーネルもあります。2.33.0ではmatmul_mxfp8系の既定のデータ型がfloat8_e4m3fnに変わり、エラーを出さずに数値結果が変わります。従来どおりにするならfloat8_dtype="float8_e5m2"を指定します。
Neuron ExplorerとNeuron Observerによるプロファイリングと監視
Neuron SDKの観測ツールは、1回の実行を細かく調べる「プロファイラ」と、稼働中のノードを見張る「監視」に分かれます。前者がNeuron Explorer、後者がneuron-top・neuron-monitorと、2.33.0で加わったNeuron Observerです。
Neuron Explorerで見られるプロファイルと2.33.0の追加機能
Neuron Explorerは2.27.0で登場し、2.29.0で安定版になったプロファイラです。UI・CLI・VS Code拡張から使え、旧Neuron Profilerからの移行先になっています。2.32.0でプロファイル取得のCLIがneuron-profile captureからneuron-explorer captureに置き換わりました。版ごとに増えた機能は次のとおりです。
- 2.28.0:システム全体のプロファイルからデバイス単位への掘り下げ、テンソルごとのメモリを見るTensor Viewer
- 2.31.0:System Trace Viewerからソースコードへのリンク、
torch.compileとeagerモードのプロファイル - 2.32.0:ホストCPUのコアごとの使用率、Tensor Engineのスロットリングの解説表示
- 2.33.0:Memory ViewerにHBMとPyTorchアロケータのタブを追加、メモリスナップショットからメモリ確保を起こしたPythonのソース行への紐づけ
プロファイル全体のJSON出力(--output-format json)に対応するのは2.33.0が最後です。出力を後段の集計に流している場合は、2.34へ上げる前にParquet形式へ切り替えます。
neuron-monitorとNeuron Observerによる稼働監視
従来の監視手段は、対話的に使用率を見るneuron-topと、メトリクスをJSONで標準出力へ流し続けるneuron-monitorです。どちらもaws-neuronx-toolsに含まれます。2.33.0では、これに加えてNeuron Observer 0.2.0が公開ベータになりました。対象はTrn2とTrn3で、構成は次のとおりです。
- ノードごとに常駐するデーモンが健全性の信号とテレメトリを集め、
nobsコマンド(例:nobs devices)でノードとデバイスの状態を見る - デバイスの状態はhealthy・unhealthy・unknownの3つで、HBMの訂正不能エラー、NeuronLinkとEFAの健全性、資源の使用率を対象にする
- 論理NeuronCoreごとに小さな計算を走らせて結果を照合するオンデマンドの健全性チェックがあり、ジョブを載せる前にノードを確かめられる
- デーモンがPrometheusの
/metricsを常に公開し、OpenTelemetryでのCloudWatch等への送出は既定で無効。EKSにはHelmチャートで入れる
ベータの間はAPIやメトリクス名が変わる可能性があり、neuron-monitorは引き続き完全にサポートされると明記されています。既存のneuron-monitorの収集基盤は残したまま、Trn2・Trn3の学習クラスタでジョブ投入前の健全性チェックから試すのが無理のない入り方です。なお2.33.0ではドライバのsysfs(/sys/class/neuron_device/neuronN/以下)の構成が組み替えられ、多くのノードの場所が変わりました。sysfsを直接読む自作の監視スクリプトは、2.33.0へ上げる時点で修正が要ります。
Neuron SDKのインストール手順と版の確認方法
公式の導入方法はDLAMI(構成済みのAMI)、DLC(コンテナ)、手動インストールの3通りです。試すだけならDLAMIが最短で、本番の配布や版の固定を厳密に管理するならDLCか手動インストールを選びます。
DLAMIで始める手順と最新AMI IDの取得方法
マルチフレームワークDLAMIの最新IDは、SSMパラメータで引けます。2.33.0からはUbuntu 26.04版もあります。
aws ssm get-parameter \
--region us-east-1 \
--name /aws/service/neuron/dlami/multi-framework/ubuntu-26.04/latest/image_id \
--query "Parameter.Value" \
--output text
latestはその時点の最新SDKを入れたAMIを指します。2.32.0以降のDLAMIにはPyTorch/XLA版のtorch-neuronxが入っておらず、2.33.0のDLAMIのtorch-neuronx 2.14.3.0はTorchNeuronなので、XLA版のコードはそのままでは動きません。特定の版のDLAMIは、AMIの説明文に入っているSDKの版で絞り込みます。
aws ec2 describe-images \
--owners amazon \
--filters "Name=name,Values=Deep Learning *Neuron*" \
"Name=description,Values=*Neuron SDK 2.33.0*" \
--query 'Images[].{Name:Name, ImageId:ImageId}' \
--output table \
--region us-east-1
手動インストール(apt・pip)で2.33.0の版を固定する手順
Ubuntu 24.04に手動で入れる場合、Neuronのaptリポジトリを署名鍵つきで登録し、ドライバ・ランタイム・ツールを2.33.0の版で入れます。以下は公式の手動インストール手順の版です。旧来のapt-key addによる鍵の登録は、2.33.0の手順では/etc/apt/keyringsへの配置に置き換わっています。
. /etc/os-release
sudo install -m 0755 -d /etc/apt/keyrings
wget -qO - https://apt.repos.neuron.amazonaws.com/GPG-PUB-KEY-AMAZON-AWS-NEURON.PUB \
| sudo gpg --batch --yes --dearmor -o /etc/apt/keyrings/neuron.gpg
sudo tee /etc/apt/sources.list.d/neuron.list > /dev/null <<EOF
deb [signed-by=/etc/apt/keyrings/neuron.gpg] https://apt.repos.neuron.amazonaws.com ${VERSION_CODENAME} main
EOF
sudo apt-get update -y
sudo apt-get install linux-headers-$(uname -r) -y
# ドライバ・ランタイム・ツール(Neuron 2.33の版)
sudo apt-get install aws-neuronx-dkms=2.31.7.0* -y
sudo apt-get install aws-neuronx-collectives=2.35.43.0* -y
sudo apt-get install aws-neuronx-runtime-lib=2.35.30.0* -y
sudo apt-get install aws-neuronx-tools=2.33.38.0* -y
export PATH=/opt/aws/neuron/bin:$PATH
PyTorch/XLA版で既存のコードを動かす場合は、2.33.0のコンパイラとNeuron 2.31のtorch-neuronxを組み合わせるのが公式手順です。
sudo apt-get install -y python3.12-venv g++
python3.12 -m venv aws_neuron_venv_pytorch
source aws_neuron_venv_pytorch/bin/activate
python -m pip install -U pip
python -m pip config set global.extra-index-url https://pip.repos.neuron.amazonaws.com
python -m pip install neuronx-cc==2.28.7631.0 torch-neuronx==2.9.0.2.15.32035
JAXはpip install jax-neuronx[stable]で、jax・jaxlib・libneuronxla・neuronx-cc・nkiをまとめて入れられます。Trn1・Trn2・Trn3で複数インスタンスにまたがる学習をする場合はEFAドライバも入れ、公式手順ではTrn1のプライマリEBSボリュームを512GB以上にするよう指定しています。
導入後に版とデバイスの認識を確認するコマンド
導入後と更新後は、Pythonパッケージ・OSパッケージ・デバイスの3か所を確認します。
# Pythonパッケージ(コンパイラ・torch-neuronx・NKI)の版
python -m pip list 2>/dev/null | grep -i -E "neuron|nki"
python3 -c "import torch, torch_neuronx; print(torch.__version__, torch_neuronx.__version__)"
# ドライバ・ランタイム・ツールの版(aptで入れたもの)
apt list --installed 2>/dev/null | grep aws-neuronx
# デバイスの認識
neuron-ls
OSパッケージとコンパイラは上の部品表と照合します。PyTorch連携は導入経路で異なり、掲載したXLA版の手動手順ではtorch-neuronx 2.9.0.2.15.32035、TorchNeuronのPyTorch 2.14向けDLAMIでは2.14.3.0が確認対象です。neuron-lsが表に出すのはデバイスごとのNeuronCore数とメモリで、何も出ない場合はドライバ(aws-neuronx-dkms)が読み込まれていないか、Neuron搭載でないインスタンスで実行しています。neuron-lsのJSON出力は2.34で形式が変わり、--json-outputは--output-format jsonに置き換わります。監視スクリプトでこの出力を解析しているなら、2.34へ上げる前に書き換えておきます。
ワークロード別に固定すべきNeuron SDKの版と移行の判断基準
2.29.0以降、新しい版ほど対応範囲が狭くなる部品が出ています。最新版にそろえる運用はやめ、ワークロードごとに版を決めて固定するのが安全です。2.33.0までのリリースノートの記載から整理すると次のようになります。
| ワークロード | 固定する版 | 根拠 |
|---|---|---|
| JAXで学習・推論 | 2.33.0(最新) | JAX 0.10.0まで対応継続 |
| Trn2・Trn3でLLM推論(新規) | 2.33.0(最新) | vLLM Neuronが0.29.0に更新 |
| Trn2・Trn3でTorchNeuron | 2.33.0(最新) | 公開ベータはこの版から |
| Trn2・Trn3でNxD Inference | 2.33.0まで | 2.34でサポート終了 |
| torch-neuronx(XLA)で学習 | torch-neuronx 2.9 | 2.32.0以降のDLAMI・DLCに非搭載 |
| NxDTで分散学習 | 2.28 | AWSが2.28での固定を案内 |
| Inf2・Trn1でNxD Inference | 2.31 | 2.31で保守継続と告知 |
| Ubuntu 24.04のDLC | 2.32.0以前 | 2.33.0のDLCは26.04のみ |
固定した版で起きやすい失敗は3つあります。1つ目は、DLAMIをlatestで引いて別の版に入れ替わり、XLA版のtorch-neuronxが無くなることです。起動テンプレートやTerraformでは、AMI IDかSDKの版を含む説明文で引いたIDを明示します。2つ目は、apt-get upgradeでドライバだけが上がり、ランタイムとの組み合わせ制約に引っかかることです。aws-neuronx-*のパッケージはapt-mark holdで止めておきます。3つ目は、pipのextra-index-urlを設定したまま版を指定せずに入れ直し、コンパイラだけ最新になることです。
2.33.0へ上げるかの判断軸は、Trn2・Trn3を使っているかどうかです。Trn2・Trn3で新しく作る学習・推論はTorchNeuronとvLLM Neuronの系統に乗せ、2.34で終わるNxD InferenceとPyTorch/XLA推論は今のうちに移行計画を立てます。一方で、torch.funcなどベータの未対応APIや動的シェイプに依存するモデルは、2.33.0のTorchNeuronでは動かないか再コンパイルが多発します。その場合はXLA版のtorch-neuronx 2.9に固定したまま、TorchNeuronの一般提供を待ちます。
sysfsの参照先とAmazon Linux 2のノードは2.33.0への更新前に、2種類のJSON出力への依存は2.34への更新前に点検します。対象は次の4点です。sysfsを読む監視スクリプトのパス、neuron-ls --json-outputの解析処理、Neuron ExplorerのJSON出力に依存した集計、Amazon Linux 2のノードの有無です。いずれも2.33.0のリリースノートで変更か終了が告知されています。
逆に、Inf2やTrn1で新規にLLM推論を組む案件は、2026年11月時点ではNeuron SDKの最新系統から外れています。vLLM NeuronとTorchNeuronはTrn2・Trn3向けで、Inf2・Trn1のNxD Inferenceは、2.29.0のリリースノートでは2.28への固定が案内され、2.33.0の告知ではNeuron SDK 2.31で保守モードが続くとされており、新機能は入りません。新規ならTrn2以降を前提にするか、GPUの推論基盤と比べてから決めるのが本記事の推奨です。vLLM自体の仕組みはvLLMとは?PagedAttentionの仕組み・使い方とOllama・TensorRT-LLMとの違いを実装者目線で解説、推論基盤全体の比べ方はLLM推論とは?仕組みと高速化の手法・推論基盤の選び方を実装視点で解説【2026年】、GPU側の選択肢はTensorRT-LLMとは?NVIDIA GPUでのLLM推論高速化の仕組みと採用判断を解説【2026年版】、Inferentia2の位置づけはAWS Inferentia(インファレンシア)とは?Inf2の料金・Trainiumとの違いとNeuron対応の現状で整理しています。
Trainium・Inferentiaを含むAWS上の学習・推論基盤を、版の固定やAMIの管理まで含めて設計したい場合は、一創のインフラ構築(AWS・Google Cloud・Azure)でご相談を受け付けています。GPUインスタンスとの費用比較や、2.34に向けた移行計画の段階からお手伝いします。
AWS Neuron SDKの対応環境や導入についてよくある質問
Neuron SDKの最新バージョンはいくつですか?
2026年11月10日時点で2.33.0です。リリースノート上のリリース日は2026年10月19日で、AWSのWhat’s Newでは10月21日に発表されました。最新の版はGitHubのaws-neuron/aws-neuron-sdkのリリース一覧か、公式ドキュメントのリリースノートで確認できます。
Neuron SDKは無料で使えますか?
SDK自体に料金はかかりません。費用はInf2・Trn1・Trn2・Trn3などのEC2インスタンス利用料として発生します。DLAMIとDLCも追加料金なしで提供されています。
torch-neuronとtorch-neuronxの違いは何ですか?
torch-neuronはInf1(第1世代Inferentia)向けの旧系統で、コンパイラはneuron-ccです。torch-neuronxはInf2・Trn1以降向けで、コンパイラはneuronx-ccです。torch-neuronxは2.9までがPyTorch/XLA版、2.13以降がTorchNeuron(ネイティブPyTorch)版と、同じパッケージ名で中身が変わっています。新規開発でtorch-neuronを選ぶ理由はありません。
NeuronLinkとは何ですか?
Trainiumのチップ同士をつなぐチップ間接続で、集団通信に使われます。Trn2の16チップ構成とTrn2 UltraServerはNeuronLink-v3で接続されています。Trainium2を1チップだけ積むtrn2.3xlargeはNeuronLinkを使いません。2.33.0のNeuron ObserverはNeuronLinkの健全性も監視対象にしています。
GPUなしのPCでNeuron向けのコードを試せますか?
NKIカーネルはCPUシミュレータ(NKI_SIMULATOR=1)で正しさを確かめられます。パッケージはLinux x86_64向けのみです。モデル全体もtorch_neuronx.traceにcpu_backend=Trueと、対象を指定するcompiler_args="--target trn1"などを渡せばLinuxのCPU環境でコンパイルできますが、生成したモデルの動作と速度の確認にはNeuron搭載インスタンスが必要です。