タイトル | : 実行速度の違いを知りたい |
記事No | : 15460 |
投稿日 | : 2012/04/25(Wed) 23:17 |
投稿者 | : ゆうや |
Win.XP で VB6SP6を使っています。VB6は10年くらい?やってます。
開発環境での速度と実行ファイル上での速度の違い(比)を知りたいです。
今回初めて「QueryPerformanceFrequency」「QueryPerformanceCounter」API関数を 使うことになりました。で、開発環境と実行ファイル上での動作速度が違うという 場面に遭遇し悩んでます。
実行ファイルを作る時は 「ネイティブコードコンパイル」「コードの実行速度を最適化」をしています、 開発環境の初期設定そのままです。
実際には、プログラム上で以下のコードを実行しています。
'★ここで 3579545を取得 Call QueryPerformanceFrequency(curFreq) curFreq = curFreq * 10000 '★所要時間取得 lngAddCount = 0 '実際にカウント(3579545回の加算) Call QueryPerformanceCounter(curStart) For lngCnt = 0 To curFreq lngAddCount = lngAddCount + 1 Next Call QueryPerformanceCounter(curEnd) dblSpan = CDbl(curEnd - curStart)
「dblSpan」変数に処理実行にかかったカウンタ値を取得しているのですが、 実行ファイル上では開発環境上の値の数分の1になっており、数倍速く実行されて います。最適化しているので当たり前といえばそうですが。
この「開発環境時より何倍速くなっているか」を、実行ファイル上で知りたいの ですが、なかなか知りえることが出来ません。パソコンのスペックにより 若干違うように見えているからです。 何か良い方法はないでしょうか。
よろしくお願いします。
|