ソースコードを中間的なバイトコードにコンパイルし、バイトコードを仮想マシン (VM) で実行

定義

ソースコードを中間的なバイトコードにコンパイルし、バイトコードを仮想マシン (VM) で実行は、programを逐次実行または実行前・実行中にnative codeへ変換する方式である。対象、前提、入力、結果を区別する。

仕組みと具体例

JITはhot pathのprofileを使ってspecializeできるがwarm-upとcode memoryを要し、AOTは起動予測性に優れる。通常時に加え、境界値、失敗、並行実行、依存条件の変化も追跡する。

実践と検証

起動、steady-state、memory、動的機能、target portabilityをworkloadで比較する。期待結果を観測可能に記述し、最小例から異常系へ広げる。

トレードオフ

精度・性能・単純さ・運用costの間にはtradeoffがある。適用範囲を広げる前に解決するriskと仮定を確認し、例外には理由と代替策を記録する。