- ベストアンサー
プログラムのループ1周に費やした時間
OSとしてUbuntu9.10を使用しており, C++のプログラムを作成しています. 無限ループを使うプログラムなのですが 1周あたり何ms費やしているのかを知るには どのような関数,システムコールを使えばよいですか. できるならば,精度は1ms程度が良いです.
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
一周ごとにgettimeofdayで現在時刻を取って差分を見るのが基本かな。 マニュアルを見るとこれからはclock_gettimeを使った方が良いかも知れないけど。 # http://www.linux.or.jp/JM/html/LDP_man-pages/man2/gettimeofday.2.html これの精度は現在の実装ならCPUクロックレジスタを見て補正しているのでミリ秒より細かい精度はあると思う。
その他の回答 (1)
- junkUser
- ベストアンサー率56% (218/384)
回答No.2
たとえば 10000回まわして、それにかかった時間を10000で割れば良いのではないでしょうか。 回す回数が多いほど精度が上がります。
お礼
ご丁寧にありがとうございます! URLを参考にしてやってみます!! ありがとうございました!