2011-11-29 149 views
3

我在我的學習指南中給出了這個問題,我正在進行測試。我不明白如何解決這個問題。我的測試是今天,我會感謝一些幫助。CPU指令每秒

如果一個CPU每條指令發出一個內存請求,並且計算機運行速度爲200 MIPS,那麼需要多少個CPU來飽和400-MHZ總線?假定存儲器引用需要一個總線週期。現在對於使用緩存並且緩存命中率達到90%的系統重複這個問題。最後,需要什麼緩存命中率才能讓32個CPU共享總線而不會超載?

回答

6

我想指導你找出答案......希望這會有所幫助。

需要多少CPU才能使400MHZ總線飽和?

計算處理器的數量是簡單的劃分。您知道總線速度和每個處理器的操作數量。這非常明顯的答案。

現在對於使用緩存並且緩存命中率達到90%的系統重複此問題。

好的,所以在這裏您可以計算出每條處理器有多少條指令觸發總線,並使用該數字而不是使用200 MIPS數字。與上面相同。

最後,需要什麼緩存命中率才能讓32個CPU共享總線而不會超載?

這基本上與上面相反......你知道總線速率和所需的處理器數量。計算出每個處理器(部門)有多少指令到達總線,然後使用該數量計算出每個處理器的緩存命中率(也稱爲除法)。

+0

因此...... 200 MIPS = 200 MHz,因此400 MIPS = 400 MHz意味着2個CPU? 我不明白整個命中的事情。我在本地得到了一些幫助,並且我得到了20個CPU的答案,但我不太明白。 – snotyak

+0

是的,你在正確的軌道上。 400 MHz,每個週期1個請求= 400M總線請求。每個CPU正在加載200M個請求,因此有2個CPU。現在計算出每個CPU以90%的命中率運行在總線上的操作數,以及具有該請求數的CPU數量。 –

+0

我們剛剛在課堂上講過。 b部分。 0.1 * 200 MIPS = 20 MIPS 400 MHz/20 MIPS = 20 CPU。 c。 400/32 = 12.5 MIPS/CPU (200-12.5)/ 200 = 187.5/200 = 93.75% – snotyak