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