為什么CPU要從單核發展到多核?


前言

這里首先直接給出結論:CPU從單核發展到多核的原因是如果維持單核,則為了提高CPU性能只能不斷提高時鍾頻率,從而會導致CPU功耗急速上升,導致機箱過熱,來不及散熱。

歷史

2004年,Intel CEO 貝瑞特曾為奔騰4處理器的時鍾頻率無法突破4GHZ而下跪道歉,並承認“兆赫神話”是錯誤的,即時鍾頻率並不是CPU性能的全部。

 

CPU性能公式

CPU的性能是每秒執行的指令數。公式如下:

CPU性能 = 時鍾頻率 × IPC

 其中:

  • 時鍾頻率=1/時鍾周期,時鍾頻率為每秒執行的時鍾周期數,單位了Hz
  • 時鍾周期是計算機中最小的工作單位,為一個振盪需要的秒數
  • IPC(Instruction Per Cycle): 一個時鍾周期完成的指令數,單位為"指令/時鍾周期"

從中我們可以看出:

  • 主頻並不是CPU性能的全部,我們還能夠通過提高IPC來提高CPU性能,比如流水線、超標量等技術就是提高IPC的典型技術。
  • 兩個不同廠商的CPU不能僅通過比較時鍾頻率來決定性能好壞,因為不同廠商CPU的架構不同,導致IPC不同。

CPU功耗

首先給出已知條件:

CPU功耗正比於"電流 × 電壓 × 電壓 × 主頻"

主頻正比於"電壓"

IPC正比於"電流"

我們可以看出:

CPU功耗正比於 "主頻的三次方"

CPU功耗正比於 "IPC"

因此:

  • 增加主頻會以三次方的速度增加功耗,因此這就證明了只提高主頻並不是個好主意。
  • 增加IPC只會以線性的速度增加功耗。
  • 如果我們增加一倍IPC,減少一倍時鍾頻率,則根據CPU性能公式得:CPU性能不變,但CPU功耗減少了。

下圖為一個笑話,即主板太熱都可以在上面煮雞蛋。

為什么多核是必然的發展趨勢?

原因有兩點:

  1. 根據Moore定律,集成電路上可容納的晶體管數量每18個月翻一番,因此CPU上的晶體管數量會越來越多。
  2. 多核能夠使得在減少時鍾頻率的同時增加性能(多核能增加IPC),但事實上目前程序員寫的軟件幾乎都不是針對多核環境寫的。

目前,世界上最快的計算機是中國的"天河2號",CPU核數為3120000,根據沙行勉教授的觀點,這種計算機一般只是為了爭排名,根本不會實際使用,因為功耗太大。

雖然多核CPU是發展趨勢,但是程序員們的程序還是依舊還是老樣子,因此並行計算的學習是解決這個問題的方法。

參考文獻

[1] http://tech.sina.com.cn/roll/2007-06-04/1054327912.shtml

[2] http://en.wikipedia.org/wiki/Clock_speed

[3] http://en.wikipedia.org/wiki/Instructions_Per_Cycle


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM