2011-01-12 63 views
2

我是新手,在rails上進行性能測試。有人可以解釋壁掛時間和加工時間之間的區別嗎?更重要的是來自測試的時間結果與基準測試之間的區別是什麼:簡介。顯然有一個主要的區別,我沒有從文檔中收集到。有幾個事實:性能測試 - 測試:配置文件與測試:基準測試,壁掛時間與處理時間對比

當我運行rake測試:基準測試中,我得到:

EditorTest#test_augment_large_doc (618 ms warmup) 
      wall_time: 554 ms 
       memory: 0.00 KB 
      objects: 0 
      gc_runs: 0 
      gc_time: 0.00 ms 

當我運行rake測試:個人資料,我得到:

EditorTest#test_augment_large_doc (617 ms warmup) 
     process_time: 1.74 sec 
       memory: unsupported 
      objects: unsupported 

我已閱讀:

...但我仍然不明白這些類型的性能測試之間的根本區別,以及爲什麼時間差異如此之大。

還有更多的事情:當我尾隨我的開發日誌時,我得到的時間通常比測試:基準測試的測試時間高一點點(0.1秒)。而且,當我用螢火蟲或鍍鉻物查看XHR請求時間時,通常會得到高出3秒的時間。

在此先感謝!

嗯......沒有反應。任何意見?這是一個工具欄開發人員經常使用的嗎?這種差異與優化過程無關嗎?

回答

4

據我所知,牆壁時間就像聽起來一樣,是測試過程中經過的秒數。處理時間稍有不同,它是衡量執行程序花費多少CPU的時間。

http://en.wikipedia.org/wiki/CPU_time

一般基準和分析之間的區別與相同的區別做。基準測試是一個簡單的過程,可以多次運行一堆代碼並查看需要多長時間。

分析更詳細,可以顯示您在代碼的不同部分花了多長時間,其中包括對堆棧中所有方法的調用次數。運行完整配置文件所需的時間並不意味着性能的指標,相反,它會向您顯示應用中不同代碼段的相對性能。

+0

謝謝。我希望找出爲什麼要花費2-3倍的時間。那裏有任何想法? – joshs 2011-01-15 05:59:12