2012-03-23 36 views
1

想知道是否有任何知情的Linux專家可以回答我的問題。我一直在爲我的操作系統類進行統計分析,因爲調度程序對CPU和IO綁定進程更高效。一個結果我從GNU時間去,我無法解釋就是爲什麼在SCHED_OTHER完全可以減少用戶的時間比SCHED_RR和SCHED_FIFO(對於CPU密集型進程)中運行相同的過程。我認爲用戶時間將獨立於計劃政策。任何人都可以點亮或指向我可以解釋的資源(除了通過源代碼,它只是一個本科類)。Linux SCHED_OTHER(CFS)用戶時間vs SCHED_RR和SCHED_FIFO用戶時間

我正在使用的數據是通過多次運行而收集的,許多併發運行的CPU綁定進程因此數據應該相當準確。謝謝。

回答

0

可以想象,CPU限制的實時進程不會給其他進程啓動異步讀取的機會。而更多的進程使用SCHED_OTHER啓動異步讀取,從而花費更少的等待數據的總時間。

+0

好的,我們認爲SCHED_OTHER可能在底層做了某種機會優化,但很難找到關於這個東西的文檔。謝謝(你的)信息。 – 2012-03-23 16:23:22

0

這可能是由於緩存的影響(在這樣的性能比較,定期突然出現)。

由於交換進程(和內核)遍佈某些緩存行,每個上下文切換都會讓您失去一大塊緩存。