cpu訪問某個記憶體位址期間,會產生等待嗎?

時間 2021-05-31 13:51:39

1樓:

訪問外設那就是另一回事了,不過讀記憶體的話,CPU會繼續執行其他指令,前提是接下來的幾條指令與現在正在執行的這條沒有邏輯依賴.這其中沒有任何中斷機制,你可以想象CPU中有N個並行的工作佇列,會不斷地相互無關滴執行各自拿到微指令直到遇到了多條指令之間的邏輯依賴.

2樓:靈劍

這個在不同時代是不一樣的,DDR技術飛速發展之前,記憶體速率低,這時候讀取記憶體的確會產生瓶頸,為了解決這個問題,在CPU當中設計了若干層快取,在CPU進行讀寫記憶體以外的指令的時候,CPU會利用記憶體匯流排空閒的時間來將一部分資料預先載入到cache內,提高以後讀寫記憶體的速度,如果反覆讀寫的都是同樣的記憶體區域,就可以通過cache提高效率。如果真的運氣不好,遇到讀取的資料不在cache中,就要等待cache載入了,不過intel的CPU有很多別的技術,比如說亂序執行,在這條指令等待的時候,後續指令如果資料上和這條指令無關,可以提到前面進行執行,這樣就減小了影響。

現在的DDR3甚至更新的記憶體,頻寬已經非常高了,基本可以追上CPU的速度。不過延遲還在,所以cache還是有必要的。

cpu對於記憶體的讀寫會受制於記憶體延遲,處理邏輯更類似於web的阻塞模型還是非同步模型?

記憶體為啥會有頻率這個概念呢?因為記憶體裡的電子必須在固定時間內跳完最長的那條電路,這個 固定時間 的長短決定了頻率。那為啥要 固定 呢?因為同步電路不同元件之間要互相同步,比如 CPU 空轉 70 個週期等記憶體 1 個週期。不固定的電路叫 非同步 電路,由於太複雜所以大概只存在於傳說之中。 Si...

記憶體執行速度比cpu快嗎?

這個問題有點難以回答,我給你換幾個相似問題 大腦思考速度比腿快嗎?電視機清晰度比冰箱高嗎?課本知識量比桌子大嗎?你提的這是什麼二百五問題? Gavin 慢吧。根據我對計算機的了解。CPU裡面都是直接通過快取記憶體來計算的。記憶體的讀取速度是肯定比快取慢的。我記得大學裡面學彙編的時候就會經常用到CPU...

蘋果的統一記憶體和整合顯示卡與CPU共用記憶體有什麼區別?

船長不划船 看那些回答感覺英特爾,amd等廠商應該趕緊請知乎的大佬們去做技術指導,推進人類進步,這種技術在知乎就是跟小孩過家家一樣的簡單。 很多引經據典的詳細回答了。都挺不錯的。蘋果的統一記憶體細節目前還不得而知。一般意義上的UMA與記憶體共享的根本區別,在於記憶體的所有權,以及其服務的方式。就好像...