低レベルの C/x64 コードの速度の最適化を書いていますが、どちらの選択が確実に高速であるかを測定する標準的な方法があるかどうか疑問に思っています。
手法 A と手法 B を比較するときの私の現在の手法では、B をほぼ同じ時間繰り返すよりも、A を数百回繰り返して、それぞれにかかった平均時間を比較します。次に、これを数十の例で繰り返し、各手法の平均値を比較します。(私は平均分についても同じことをします)
残念ながら、この方法にはいくつかの問題があるようです。たとえば、テストする 3 番目の手法を検討し、実際には B を使用すると、この 2 回目の B の実行はほぼ体系的に高速になり (キャッシュ効果?)、A よりも十分高速になります。
また、JIT 化されたコードをプロファイリングするためのより適切な手法はありますか?