2011-05-04 34 views
2

我在Win32下面的代碼來計算使用QueryPerformanceCounter的()如何caluate CPU週期爲的QueryPerformanceCounter的

LARGE_INTEGER ltime; <br> 
UINT32 cycles; <br> 
QueryPerformanceCounter(&ltime);<br> 

cycles = (UINT32) ((ltime.QuadPart >> 8) & 0xFFFFFFF); 

如何落實的ARM Cortex A9(熊貓板)相同的運行Ubuntu的CPU週期(OMAP4)?

回答

2

你最好打賭可能是使用clock_gettimeCLOCK_PROCESS_CPUTIME_IDCLOCK_THREAD_CPUTIME_ID。 (見clock_gettime

這會給你分別爲「特定線程的CPU時鐘」「高分辨率每個進程從CPU計時器」。

或者,我們可以總結times返回的值,但我想這樣做會不太準確,因爲它也取決於調度程序,而上面假設從CPU讀取性能計數器(如果可能)。