ユーザ用ツール

サイト用ツール


benchmark_official

公式ページにベンチマーク結果がまとまっていた

どちらかというと他の言語との比較ではなく、計算結果をより高速化するためのアイデア集に近い

https://github.com/JoeStrout/miniscript-benchmarks

Miniscriptを高速に動かすためのTipsについても記載がある

https://github.com/JoeStrout/miniscript-benchmarks/blob/main/PerfIdeas.md

以下 Tipsを適当に翻訳したのを乗っける

TACの最適化

  • 変数に計算結果をルックアップ
  • 計算対象とする変数をリストから抽出する
  • リストを直で読まないようにする(これ具体的にどうするのか不明なのでもうちょっと調べる)

計算範囲を限定化する

  • 開始終了ステップを含む特別な状態にしてメモリを大量に持たないようにする(リスト数千もつ場合に有用)
  • 大量にメモリを確保するシチュエーションを避ける
  • 計算結果は短いメモリで持つようにする

—-

効果があるかわからないもの

Forループ最適化

組込関数のインライン関数化

実行が完了してから時間計測等を行う

時間関数がとっても高価な扱いのため、処理自体を阻害している可能性あり

benchmark_official.txt · 最終更新: 2023/06/12 09:51 by machiaworx