AI LAB / KEYWORD DICTIONARY

基礎知識

Neuron Profiler(Neuronプロファイラー)とは?

Neuronプロファイラーは、TorchNeuronでPyTorchの処理とNeuronランタイム、AWS Trainium上の動作を関連付けて記録するためのプロファイリング機能です。

仕組みと使いどころ

NeuronProfilerは、NeuronConfigで指定した収集対象や出力先に従い、torch.profilerのトレース出力用コールバックを提供します。PyTorch側のCPU処理に加え、設定に応じてNeuronランタイムやTrainiumデバイスの活動を取得し、同じ出力先へ書き出せます。記録結果はNeuron Explorerで処理の流れ、呼び出し階層、依存関係、対応するソース行などを確認でき、torch.profilerの集計機能から演算ごとのデバイス時間も調べられます。性能を自動的に改善する機能ではなく、分析に必要な情報を収集・出力するための仕組みです。

Neuron Profilerの活用例

たとえば、こんな場面で

Trainium上で動くPyTorchワークロードを計測し、演算ごとのデバイス時間を並べて、処理時間の大きい箇所を調査する用途が考えられます。Neuron Explorerではフレームワークからデバイスまでの実行関係も確認できます。

使うときのポイント

NeuronConfigで収集モード、対象のNeuronCore、出力先、時刻の関連付けなどを確認します。取得できる情報は設定した収集範囲に依存するため、分析目的に必要なトレースが有効かを事前に確かめてください。

参考資料

Introducing TorchNeuron: Native PyTorch backend for AWS Trainium - PyTorch (新しいタブで開きます)

用語の説明や活用例に関連する参考資料です。

READ & LEARN

用語を知ったら、活用を知る。

AI LABで、AIの動向や業務に取り入れるヒントを読む。

記事一覧を見る