2013-10-05 30 views
2

根據this question,在同一臺機器上運行的基準測試結果非常不同。你如何製作真實,安全的基準?

我不是在問如何使用microtime或者哪個框架,而是你如何確保你的基準測試沒有任何偏見?任何機器設置,軟件設置,過程設置?有沒有辦法確保您的基準可以安全地用作參考?

回答

0

基本基準是有點像科學研究,所以適用相同的規則。基準通常是爲了回答某種問題,所以從制定一個好問題開始。之後,消除所有錯誤的偏見是一種實踐和經驗。

確保您詳細瞭解並記錄運行時環境(例如關閉電源管理和其他可能會干擾測量的後臺任務)。 確保您經常重複實驗(基準運行)以獲得良好和穩定的平均值並記錄下來。 確保你知道你正在測量的是什麼(例如,如果你想測量內存性能等,或者使用與你的內核一樣多的線程,使用大於所有高速緩存的工作集)。

在某些情況下,這需要緩存填充和數據集緩存,在其他情況下,您需要做相反的事情。取決於你想用你的基準來回答的問題。