2009-02-04 42 views

回答

7

這是一個免費的應用程序,由Larry McVoy和朋友寫的LMBench。它提供了一堆操作系統&硬件基準測試 其中一個測試稱爲lat_ctx,它測量交換機的等待時間。 谷歌for lmbench並檢查你自己的硬件。它是唯一讓你的數字有意義的方法。

吉拉德

3

運行vmstat在您的機器上執行某些需要大量上下文切換的操作。它並不告訴你實際開關需要多長時間,但它會告訴你每秒有多少開關。

然後,您必須估計每個時間片執行實際代碼所花的時間,與切換上下文相比。也許100:1還是什麼?我不知道。 1000:1?

我的一臺機器現在每秒鐘執行大約3000個開關,即每個時間片0.3毫秒。如果比例爲100:1,則表示實際開關需要0.003 ms。

但是,隨着多內核,線程執行產生,等等等等,我難道不汲取這樣的猜測:)

-1

我寫的代碼,是能夠在200K呼應(小)UDP數據包的任何結論數據包每秒。

這表明可以在不超過2.5微秒的上下文切換,實際的上下文切換可能會比這少一些。

+1

您確定您正在切換上下文並且一次不從操作系統獲取多個UDP數據包嗎? – 2009-02-04 22:49:42

+0

好點 - 將需要考慮如何檢查... – Alnitak 2009-02-04 23:01:22