問題タブ [microbenchmark]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
benchmarking - DはVector(T)タイプを暗黙的にキャストします
コードフラグメントの比較A:
Bと:
私のベンチマーク(DMD、Win7)では、AはBよりも約50ms高速です。これが理由は何ですか?Aの方が速い場合はそれを使用したいのですが、何を試しても、Vector2!doubleを暗黙的にVector2!floatにキャストすることはできません。これらのタイプを暗黙的にキャストする方法について何かアイデアはありますか?それとも、暗黙のうちにキャストしてはいけない理由についての議論はありますか?
これらのコンパイラでこのベンチマークを実行するようにGDCとLDCを設定していますが、これがDMDのみの最適化の問題であるかどうかを誰かが知っていますか?
java - キャリパー マイクロベンチマークを実行する gradle タスクの定義
これはおそらくキャリパーの質問というよりGradleの質問ですが、私はまだGradleに慣れていません。Caliper を使用していくつかのベンチマークを実行できるタスクをビルドに提供することに関心があります。私はすでにCaliperをtestCompileの依存関係に追加しており、それが機能してすべてをプルダウンします。実際にベンチマークを実行するタスクを提供する方法を知りたいです。
ところで、私はすでに caliper-ci について知っています。私は Jenkins ビルドを持っていますが、まだキャリパー ci の使用を構成できないクラウド サービス上にあり、加えて、変更をクラウドにコミットする前にローカルで実行できるようにしたいと考えています。
r - 予期しない結果: マイクロベンチマーク
私は常に、とのベンチ マーキングの精度の欠如に少し悩まされてsystem.time
おりrbenchmark
(タイミングの精度が不足している可能性があるという点で)、Hadley がmicrobenchmark
最近パッケージを参照しているのを見ました。そこで、以下に示すように回転させることにしました。私はmean
反対し、よりもはるかに良い成績を収めることf <- function(x) {sum(x)/length(x)}
を期待していましたが、私が理解しているように、結果はこれが真実であることを示していません.mean
f
- 結果を誤解していますか?
- f は実際に平均より速いですか?
- マイクロベンチマークはまだベータ段階にあり、これを解決する必要がありますか?
Win 7 マシンで R2.15 を実行しています (OS によってマイクロベンチマークのタイミングが異なるため)。
結果
コード
java - キャリパー:注釈を使用してベンチマークを定義してみませんか?
Caliperについて知り、ドキュメントを確認したところ、すばらしいツールのように見えます(KevinとGoogleのギャングがopensourcingを提供してくれたことに感謝します)。
質問。一般的なユースケースのベンチマークを定義するための注釈ベースのメカニズムがないのはなぜですか?次のようなもののようです:
数行のコードを節約し、読みやすさを向上させます。
perl - else は elsif よりも遅いですか?
sub
eins
がelse
より遅いのsub
zwei
はなぜelsif
ですか?
cloud - VoltDBのYCSB
VoltDBのベンチマークに利用できるYCSBクライアント/ドライバーの実装があることを誰かが知っていますか?または、参考文献/ブログ/記事/研究プロジェクトでさえありますか?
VoltDBベンチマークにTPCワークロードを使用できますか?
みなさん、ありがとうございました。
java - -XX:+PrintCompilation の出力を理解する
Java リスト反復コードでいくつかのマイクロ ベンチマークを実行しています。-XX:+PrintCompilation および -verbose:gc フラグを使用して、タイミングの実行中にバックグラウンドで何も起こらないようにしました。ただし、出力に理解できないものがあります。
コードは次のとおりです。ベンチマークを実行しています。
これが出力です。
出力からのこれらの 4 行がわかりません。
- これらのメソッドが両方とも 2 回コンパイルされるのはなぜですか?
- この出力をどのように読むのですか...さまざまな数字は何を意味していますか?
android - Android: 2 つのアルゴリズムのベンチマーク
同じ問題に対して 2 つのアルゴリズムを実装しましたが、どちらが専門的な方法で最適かを調べたいと考えています。
基本的なアイデアは次のとおりです。
そして、両方のアルゴリズムに対してそれを行います。
しかし:
Androidシステムがバックグラウンドでシステム計算を行わず、データを歪めないことをどのように達成できますか
使用済みメモリを比較する方法はありますか?両方の方法が必要ですか?
java - 特定のメソッドがJITコンパイルされているかどうかをJVM内から判断する方法はありますか?
マイクロベンチマークを作成する場合、メソッドがコンパイルされているかどうかによって、実行時間に大きな違いが見られます。プログラム内から特定のメソッドがコンパイルされているかどうかを確認する方法はありますか?あるいは、それを要求する方法、またはJVMに渡されるフラグなどに関する追加情報なしで適切にウォームアップする方法を知る方法はありますか?明らかに、これは必ずしも完全ではありません(たとえば、JVMが解釈されたコードにフォールバックする原因となる条件が存在する可能性があります)が、確かに改善されます。