floating_vs_decmial_x/bench API

Luna-Flow/diff_bench/floating_vs_decmial_x/bench は実行可能パッケージです。公開項目はなく、インターフェースはコマンドラインと書き出すファイルです。ライブラリパッケージ floating_vs_decmial_x を使います。

コマンド

moon run --release src/floating_vs_decmial_x/bench --target native

この実行ファイルは引数を取りません。JSONL に記録された再実行コマンドは演算、サイズ、実装の引数を付け加えますが、実行ファイルはそれらを無視して実験全体をやり直します。

実験

default_benchmark_protocol() とシード 0xDEC1A1 で run_mare_benchmark を 2 回実行します。係数 1、4、16、64、256、1,024、4,096 桁で、サイズごとに 3 つのデータセットを使います:

実行演算意味論グループ計時範囲
厳密add、subtract、multiply、divide、compareexact_overlaparithmetic_only
X 互換multiply、dividex_compatiblesemantic_equivalent_pipeline

出力

  • 標準出力:各実験の Mare Mark JSONL(validation、calibration、observation、summary の各レコード)と、その後に続く PerformanceResult ごとの "comparison" レコード。
  • artifacts/floating_vs_decmial_x/scaling.html:mare_performance_report_html で書き出した自己完結の HTML レポート。ディレクトリがなければ作成されます。

終了ステータス

いずれかの検証が失敗すると、レポートを書き終えた後に decimal differential validation failed で中断します。失敗のない完全な実行は正常終了します。

ターゲット

main.mbt は native 向けにだけコンパイルされます。js、wasm、wasm-gc、llvm では main_unimplemented.mbt がビルドされ、ランナーには native が必要だと表示して終了します。