爲什麼微處理器要從單核轉向多核?

作者 趙軍

 

自從英特爾在2005年推出了第一代雙核處理器之後,我們經常會被用戶問到這個問題,爲什麼微處理要從單核轉向多核?計算機上不斷涌現的新興使用模式讓最終用戶對處理器的處理能力——即性能——提出了更高的要求,並且對性能每年提高的幅度還在不斷加速,而多核技術是目前行之有效的方法。

圖注:如何將處理器性能提高10倍——採用多核技術


爲什麼不能用單核的設計達到用戶對處理器性能不斷提高的要求呢?答案是功耗問題限制了單核處理器不斷提高性能的發展途徑。

作爲計算機核心的處理器就是將輸入的數字化的數據和信息,進行加工和處理,然後將結果輸出。假定計算機的其他子系統不存在瓶頸的話,那麼影響計算機性能高低的核心部件就是處理器。反映在指令上就是處理器執行指令的效率。

處理器性能 = 主頻 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的創新技術;英特爾® 智能功率特性則是降低微架構功耗的技術。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章