AI用語集
人工知能の完全辞典
TVM (Tensor Virtual Machine)
様々なハードウェアアーキテクチャ上でテンソルを最適化および実行するために設計されたオープンソースのコンパイルフレームワークで、ディープラーニングモデルの抽象度を下げます。
ジャストインタイム (JIT) コンパイル
実行時にバイトコードや中間コードをネイティブマシンコードに変換するコンパイル技術で、システムの実際の状態に基づいた最適化を可能にします。
アヘッドオブタイム (AOT) コンパイル
ソースコードを実行前にネイティブマシンコードにコンパイルするプロセスで、起動レイテンシーを削減し、実行環境に依存しない積極的な最適化を可能にします。
グラフ IR (中間表現)
AIモデルの計算グラフの抽象表現で、コンパイラが依存関係を分析し、コード生成前に最適化変換を適用するために使用されます。
オペレーターフュージョン
計算グラフ内の複数の基本操作を単一の計算カーネルに結合する最適化技術で、メモリオーバーヘッドを削減し、データの局所性を向上させます。
自動スケジューリング
特定のターゲットハードウェアアーキテクチャ上で計算カーネルの最適な実行構成(タイリング、ベクトル化、並列化)を自動的に探索するプロセスです。
ターゲット固有の最適化
生成されたコードをハードウェアアーキテクチャ(CPU、GPU、TPU、ASIC)のユニークな特性に適応させ、パフォーマンスを最大化する一連のコンパイル技術です。
Relay IR
TVMの高レベル機能的中間表現で、制御フローを持つ計算グラフをサポートし、複雑な意味論的最適化を可能にします。
テンソル式 (TE)
TVMにおけるドメイン特化言語で、テンソル計算を高い抽象度で記述し、様々なターゲット向けの最適化されたコードの自動生成を容易にします。
カーネル自動チューニング
特定のハードウェア上で最高性能を提供する構成を特定するために、計算カーネルの最適化パラメータ空間を系統的に探索するプロセスです。
HLO (高レベルオプティマイザ) IR
XLAで使用される中間表現で、高レベルのテンソル演算として計算を記述し、アクセラレータ向けのコード生成前に最適化されます。
コード生成 (Codegen)
最適化された中間表現を特定のターゲットアーキテクチャ向けの実行可能なマシンコードに変換するコンパイルの最終段階です。
ポリヘドラルモデル
ネストされたループを表現・変換するために使用される数学モデルで、タイリングや自動並列化などの複雑な最適化を可能にします。
LLVM (低レベル仮想マシン)
多くのAIコンパイラで使用されているモジュラーコンパイル基盤で、異なるCPUアーキテクチャ向けの最適化されたマシンコードを生成します。
メモリレイアウト最適化
空間的および時間的局所性を改善するためにメモリ内のデータを再編成する技術で、アクセス遅延を減らし、計算スループットを向上させます。
ハードウェア抽象化レイヤー (HAL)
基盤となるハードウェアの特定の詳細を隠蔽するソフトウェアインターフェースで、ネイティブ最適化を活用しながら、コンパイラがポータブルなコードを生成することを可能にします。
ベクトル化
スカラー演算をベクトル演算(SIMD)に変換し、現代のプロセッサの並列計算ユニットを活用する最適化技術。
タイリング
テンソル計算におけるキャッシュ再利用と並列化効率を向上させるため、データをブロック(タイル)に分割する戦略。
グラフ書き換え
書き換えルールを適用してサブグラフをより高性能な等価なものに置き換えることにより、計算グラフを体系的に変換する手法。