• ベストアンサー

計算時間の測定

計算時間の測定の精度を高くしたいのですが、誰か教えてください。 単位はμsはほしいです。言語はCかMathematicaでお願いします。 ちなみにOSはWinXPです。

質問者が選んだベストアンサー

  • ベストアンサー
  • ymmasayan
  • ベストアンサー率30% (2593/8599)
回答No.1

これはなかなか厄介です。 アセンブラーなら命令語の実行時間は明確にわかるのですが、高級言語ではなかなか難しいです。 まず、C言語プログラムの中で2回CPU時計を読んで差を取る事にします。 これはぜんぜん当てにはなりません。なぜなら時計を読むのはOSでOSにはスーパーバイザー割込みをかけるのですから、オーバヘッドが大きすぎて精度が出ません。 次の方法は、目的の演算を何万回もループさせてその時間差をCPU時計で測ります。ループ部分の誤差は出ますがさっきよりも精度は上がります。 ループ回数を色々変えたり、1回のループの中に計算を2回いれたり、ループの組み方を変えたりしてデータ解析(グラフ)すれば、精度はどんどん上げていけると思います。このあたりは連立1次方程式のイメージです。 後は、工夫と繰り返しで頑張って下さい。

versusthunder
質問者

お礼

ありがとうございました。 なんとか問題は解決できそうです。

関連するQ&A