QueryPerformanceFrequency( )取得的值 |
答題得分者是:Cooky Kid
|
Just4U
初階會員 ![]() ![]() 發表:38 回覆:56 積分:28 註冊:2002-03-27 發送簡訊給我 |
|
Cooky Kid
初階會員 ![]() ![]() 發表:5 回覆:68 積分:44 註冊:2002-07-11 發送簡訊給我 |
小弟手頭上剛好有QueryPerformanceFrequency這個API範例,
but...實在不太了解您的需求....
|
Just4U
初階會員 ![]() ![]() 發表:38 回覆:56 積分:28 註冊:2002-03-27 發送簡訊給我 |
我是想為一個delay的函式得到一個較精確的基準時間, Win98/266MHz, Win98/400MHz
QueryPerformanceFrequency() = 1193180 Win2000/550MHz, WinXP/700MHz, WinXP/1.8GHz
QueryPerformanceFrequency() = 3579545 我的疑問是, 由上述測量值看來, QueryPerformanceFrequency()的值好像與CPU無關而與OS有關, 是這樣嗎? 可是照常理來說, 不是應該CPU越快, QueryPerformanceFrequency()的值會越大嗎?
引言: 小弟手頭上剛好有QueryPerformanceFrequency這個API範例, but...實在不太了解您的需求.... |
Cooky Kid
初階會員 ![]() ![]() 發表:5 回覆:68 積分:44 註冊:2002-07-11 發送簡訊給我 |
據小弟所知--
QueryPerformanceFrequency 是依照cpu震盪頻率(tick)所取得的數值為基準,
(真是滿詭異...竟然有API可探觸到cpu震盪頻率.....) 小弟也很好奇的請教大大--
您也有在 550MHz, 700MHz, 1.8GHz, PC上裝win98?
跟266MHz, 400MHz, 數據一樣?
or 反過來..
在 266MHz, 400MHz, PC上裝winXP,2000?
跟550MHz, 700MHz, 1.8GHz, 數據一樣?
|
Just4U
初階會員 ![]() ![]() 發表:38 回覆:56 積分:28 註冊:2002-03-27 發送簡訊給我 |
大大, 真高興你還在, 我用同一台PC(700MHz)分別在Windows 98/XP下測量QueryPerformanceFrequency()的值, 如下: Windows 98 : QueryPerformanceFrequency() = 1193180
Windows XP : QueryPerformanceFrequency() = 3579545 由上述測量值看來, 好像只與OS有關, 請問QueryPerformanceFrequency()的值代表的意義是什麼呢?
引言: 據小弟所知-- QueryPerformanceFrequency 是依照cpu震盪頻率(tick)所取得的數值為基準, (真是滿詭異...竟然有API可探觸到cpu震盪頻率.....) 小弟也很好奇的請教大大-- 您也有在 550MHz, 700MHz, 1.8GHz, PC上裝win98? 跟266MHz, 400MHz, 數據一樣? or 反過來.. 在 266MHz, 400MHz, PC上裝winXP,2000? 跟550MHz, 700MHz, 1.8GHz, 數據一樣? |
Cooky Kid
初階會員 ![]() ![]() 發表:5 回覆:68 積分:44 註冊:2002-07-11 發送簡訊給我 |
引言: 大大, 真高興你還在, 我用同一台PC(700MHz)分別在Windows 98/XP下測量QueryPerformanceFrequency()的值, 如下: Windows 98 : QueryPerformanceFrequency() = 1193180 Windows XP : QueryPerformanceFrequency() = 3579545 由上述測量值看來, 好像只與OS有關, 請問QueryPerformanceFrequency()的值代表的意義是什麼呢?小弟對精密計時與API函式 QueryPerformanceFrequency的前因後果,沒法比以下兩個網頁解說的更完整,so...推薦大大到下列兩個網頁,應該對您有些幫助... |
Just4U
初階會員 ![]() ![]() 發表:38 回覆:56 積分:28 註冊:2002-03-27 發送簡訊給我 |
|
Cooky Kid
初階會員 ![]() ![]() 發表:5 回覆:68 積分:44 註冊:2002-07-11 發送簡訊給我 |
引言: 謝謝大大的幫忙!!! 就先這樣吧! 我再多看一些資料.sorry...沒法解決您的疑問... 小弟的想法是: 就以程式實作的角度, CPU的震盪頻率在不同OS下,有著穩定、可靠的數值基礎,可供programmer測量程式運算執行的時間; 顯然在CPU的等級不會影響不同OS(9X/1193180 and XP/3579545)下,只要programmer在計時前,確認OS是9X or XP,計算出來的總時間,運用簡單的換算,就可以得到可信賴的數值。並不會因為OS不同而出現無法對照的窘境。 另外, 以此函式(QueryPerformanceFrequency)為何在不同OS下,取得的震盪頻率不同數值? 小弟以為--若大大可以從M$文件中取得此函式的soure code,或許會解開此迷團吧... |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |