原文出處:
自從英特爾在2023年推出了第一代雙核處理器之後,我們經常會被使用者問到這個問題,為什麼微處理要從單核轉向多核?計算機上不斷湧現的新興使用模式讓終端使用者對處理器的處理能力——即效能——提出了更高的要求,並且對效能每年提高的幅度還在不斷加速,而多核技術是目前行之有效的方法。
為什麼不能用單核的設計達到使用者對處理器效能不斷提高的要求呢?答案是功耗問題限制了單核處理器不斷提高效能的發展途徑。
作為計算機核心的處理器就是將輸入的數位化的資料和資訊,進行加工和處理,然後將結果輸出。假定計算機的其他子系統不存在瓶頸的話,那麼影響計算機效能高低的核心部件就是處理器。反映在指令上就是處理器執行指令的效率。
處理器效能 = 主頻 x ipc
從上面的公式可以看出,衡量處理器效能的主要指標是每個時鐘週期內可以執行的指令數(ipc: instruction per clock)和處理器的主頻。其實頻率就是每秒鐘做週期性變化的次數,1秒鐘只有1次時鐘週期的改變叫1hz(赫茲)。主頻為1ghz 就是1秒鐘有10億個時鐘週期。
因此,提高處理器效能就是兩個途徑:提高主頻和提高每個時鐘週期內執行的指令數(ipc)。處理器微架構的變化可以改變ipc,效率更高的微架構可以提高ipc從而提高處理器的效能。但是,對於同一代的架構,改良架構來提高ipc的幅度是非常有限的,所以在單核處理器時代通過提高處理器的主頻來提高效能就成了唯一的手段。
不幸的是,給處理器提高主頻不是沒有止境的,從下面的推導中可以看出,處理器的功耗和處理器內部的電流、電壓的平方和主頻成正比,而主頻和電壓成正比。因為: 「處理器功耗 正比於 電流x 電壓 x 電壓 x 主頻」,「主頻 正比於 電壓」, 所以:「處理器功耗 正比於主頻的三次方」
如果通過提高主頻來提高處理器的效能,就會使處理器的功耗以指數(三次方)而非線性(一次方)的速度急劇上公升,很快就會觸及所謂的「頻率的牆」(frequency wall)。過快的能耗上公升,使得業界的多數廠商尋找另外乙個提高處理器效能的因子,提高ipc。提高ipc可以通過提高指令執行的並行度來實現,而提高並行度有兩種途徑:一是提高處理器微架構的並行度;二是採用多核架構。在採用同樣的微架構的情況下,為了達到處理器ipc的目的,我們可以採用多核的方法,同時有效地控制功耗的急劇上公升。為什麼?看看下面的推導。
因為:「處理器功耗 正比於 電流x 電壓 x 電壓 x 主頻」,「ipc 正比於電流」,所以:「處理器功耗 正比於 ipc」
由單核處理器增加到雙核處理器,如果主頻不變的話,ipc理論上可以提高一倍,功耗理論上也就最多提高一倍,因為功耗的增加是線性的。而實際情況是,雙核處理器效能達到單核處理器同等效能的時候,前者的主頻可以更低,因此功耗的下降也是指數方(三次方)下降的。反映到產品中就是雙核處理器的起跳主頻可以比單核處理器更低,效能更好。
由此可見,將來處理器發展的趨勢是:為了達到更高的效能,在採用相同微架構的情況下,可以增加處理器的核心數量同時維持較低的主頻。這樣設計的效果是,更多的並行提高ipc,較低的主頻有效地控制了功耗的上公升。
除了多核技術的運用,採用更先進的高能效微架構可以進一步提高ipc和降低功耗——即提高能效。基於英特爾®酷睿™ 架構的英特爾® 酷睿™ 2 雙核處理器和至強處理器就是現實中的例子。相比英特爾前一代的netburst 微架構(intel® pentium® 4 和pentium® d),酷睿微架構採用的英特爾® 寬區動態執行引擎和英特爾® 高階數字**增強技術,就是提高ipc的創新技術;英特爾® 智慧型功率特性則是降低微架構功耗的技術。
多核心處理器與單核心處理器就像同樣的水,用乙個大功率的水幫浦抽水不如用多個功率稍小的水幫浦抽水。只不過問題在於軟體行業現在支援雙核心的os還很少,雙核心的優勢只能表現在多工的情況下,而多工的表現又受限於其他硬體,表現的也不盡完美,所以未來必須要有更多的os與應用軟體相結合,才會更快的進入多核心的時代。
其實,支援雙核的伺服器作業系統已經很普及了。對於客戶端作業系統,像windows xp, vista 都是支援雙核的作業系統——支援多工多執行緒的作業系統。目前,越來越多的軟體和應用程式都支援多執行緒和多工。這種趨勢不是出現雙核處理器才開始的,早在英特爾在pentium 4 上支援超執行緒就開始了。只要使用支援多執行緒的編譯器編譯高階程式語言編寫的程式,就可以讓生成的可執行程式支援多執行緒,當然就可以充分利用雙核處理器的能力。
既然晶元頻率的提公升導致功耗三次方的加大,那麼記憶體是否也有類似的情況呢?是否應該設計多核記憶體來降低能耗並提公升效能呢?回答:通過提高記憶體晶元每個讀寫週期內傳送位元的數量,從而可以使每個記憶體晶元的物理工作頻率降低。例如,記憶體技術從sdram, 發展到 ddr sdram, 然後是ddr2 sdram, 到最近的ddr3 sdram,就是按照這樣的思路開發和設計的。ddr-400 和 ddr2-400的資料傳輸率理論上是一樣的,但是ddr-400 記憶體的物理工作頻率是200mhz, 而ddr2-400 記憶體的物理工作頻率只有100mhz, ddr2-800 記憶體的物理工作頻率是200mhz, 可 ddr2-800 的資料傳輸率是ddr-400的兩倍。
雙路cpu和雙核cpu在結構和效能上又是什麼關係呢?回答:雙路cpu是指系統裡面可以插上2顆cpu, 雙核cpu是一顆cpu內部有2個核心。例如,雙路伺服器,裡面可以有2顆cpu,這兩顆cpu可以是單核的,也可以是雙核,四核的,等等。
為什麼微處理器要從單核轉向多核?
最近開始在網上看一些經典的網際網路的文章 新聞之類。平時對這些關注不多,以後注意積累這方面的內容吧。總結如下 假定計算機的其他子系統不存在瓶頸的話,那麼影響計算機效能高低的核心部件就是處理器。反映在指令上就是處理器執行指令的效率。處理器效能 主頻 x ipc 因此,提高處理器效能就是兩個途徑 提高主...
為什麼CPU要從單核發展到多核?
這裡首先直接給出結論 cpu從單核發展到多核的原因是如果維持單核,則為了提高cpu效能只能不斷提高時鐘頻率,從而會導致cpu功耗急速上公升,導致機箱過熱,來不及散熱。2004年,intel ceo 貝瑞特曾為奔騰4處理器的時鐘頻率無法突破4ghz而下跪道歉,並承認 兆赫神話 是錯誤的,即時鐘頻率並不...
嵌入式微處理器詳述(1) 什麼是嵌入式微處理器
ieee定義 嵌入式系統是用於控制 監視或者輔助操作 機器和裝置的裝置。一般定義 以應用為中心 以計算機技術為基礎,軟體 硬體可裁剪 功能 可靠性 體 積 功耗嚴格要求的 專用計算機系統。無作業系統 簡單的作業系統 實時作業系統 網路化 智慧型化 軟體韌體化,大多數嵌入式系統的軟體固話到唯讀儲存器中...