java編程 如何精確測量程序的cpu時間?
如何精確測量程序的cpu時間?為了準(zhǔn)確計算程序的運行時間,如果主程序使用匯編語言,則匯編的每條語句的執(zhí)行時間是固定的,程序的運行時間直接根據(jù)匯編語句計算;如果主程序使用C語言,則C語言,C語言程序的運
如何精確測量程序的cpu時間?
為了準(zhǔn)確計算程序的運行時間,如果主程序使用匯編語言,則匯編的每條語句的執(zhí)行時間是固定的,程序的運行時間直接根據(jù)匯編語句計算;如果主程序使用C語言,則C語言,C語言程序的運行時間可以通過定時器函數(shù)獲得,但其精度不夠高,不能用來測量小于100ms的程序的運行時間,其優(yōu)點是精度不太依賴于系統(tǒng)負(fù)載,理論值與程序執(zhí)行時間的誤差很小。
但實際上,計算機(jī)不僅運行一個程序,進(jìn)程切換、各種中斷、共享多用戶、網(wǎng)絡(luò)流量、緩存訪問、傳輸預(yù)測等,都會對定時產(chǎn)生影響。因此,程序的準(zhǔn)確運行時間很難計算。除非是有條紋的嵌入式電路板