龍芯總強調同頻性能,是因奔騰4要到25+GHz才比得上酷睿11代單核

  閒話不說,先上圖,是SPEC CPU 2006 int(單任務)測試的成績:

1. 龍芯總強調同頻性能,是因奔騰4要到25+GHz才比得上酷睿11代單核

  上圖中的成績,大部分是本人自己測試的結果。SPEC CPU 2006 的測試可費勁了,Pentium 4運行一遍完整測試(int base/peak)需要24小時以上,飛騰D2000和兆芯KX-U6780A也要至少12個小時,也能側面說明測試結果的準確性和全面性。某些幾秒鐘到幾分鐘就完成測試的軟件只能體現CPU某一方面的性能,無法實現全面考察 。其中有兩個來自SPEC官網的成績,因爲測試年代久遠,測試時的系統環境和編譯器等都比較老,所以成績比不上本人新近測試的相近型號的CPU,只能作爲參考。

  i5-760是Intel酷睿初代4核4線程產品,標稱主頻2.8GHz,睿頻3.33GHz,但我試了兩款主板默認睿頻都只能達到2.91GHz。因此3.33GHz要用當年的高端主板,通過一些附加的設置才能達到。

  i7-1165G7是筆記本CPU,默認環境下無法把睿頻保持到較高的水平,因此我進行了兩次測試。第一次測試時僅在筆記本下放了個風扇加強散熱,第二次測試時卸了後殼,加了個服務器的暴力風扇,再用工具軟件強制CPU運行在較高的頻率。

  Pentium4(641)在使用GCC編譯器時,每GHz的成績只有2.37。不考慮內存等部件對性能的影響,要想達到i7-1165G7在4.3GHz左右時的56.1分,至少需要23.67GHz的頻率。因爲桌面版本的CPU可以達到更高的頻率,所以Pentium4(641)要想與桌面版11代酷睿比拼單核性能的話,頻率就需要達到25~28GHz。

  國產的飛騰D2000、FT-2000/4、兆芯KX-U6780A、龍芯3A4000單核性能相差無幾,但我測試的3A4000頻率僅1.8GHz,因此它的每GHz成績比飛騰和兆芯的產品高得多。3A4000是28nm工藝,表中飛騰和兆芯的產品都是16nm工藝,工藝要先進一代。

  龍芯3A5000終於使用了與飛騰和兆芯相當的生產工藝,主頻也相當接近,但是單核性能卻超過了它們的1.7倍,與3.33GHz時的i5-760相當。只看每GHz的測試成績的話,3A5000大致是4~6代酷睿的水平,也就是說與4~6代酷睿的單核同頻性能相當。

  飛騰和兆芯的單核性能低,比2007年的筆記本CPU T7500還低一些。每GHz的性能更低,還比不上T7500。但它們都宣傳達到國際主流水平,和6代酷睿CPU性能相當,是怎麼回事兒呢?

  因爲D2000和KX-U6780A都是8個核心,全CPU運行SPEC CPU 2006 int(多任務)測試時,都有80分多點。多核心並行運行時,運行效率不是單核心的簡單疊加。受內存訪問、Cache同步等影響,核心數量越多時,多核加速比越低。因此8個核心的D2000(2.3GHz)和KX-U6780A(2.7GHz),以及4個核心的3A5000(2.5GHz)和i5-760(3.33GHz),在使用GCC編譯器測試SPEC 2006 int時,實際的多核心性能都在80分左右的相同水平。

  我們看到6代酷睿i5-6400單任務就有37.6分,那麼6代酷睿兩個核心跑多任務總能接近70分吧,要是2核4線程那就妥妥地超80分了。因此飛騰和兆芯宣傳的6代酷睿水平,實際是用8個核心和2個核心進行比較呢。

  龍芯說3A5000接近主流水平,水分就要少得多,因爲單核同頻性能與4~6代酷睿差不多,那就和低頻版本的i5-6400T(2.2~2.8GHz)比較吧,總歸是4個核心對比4個核心,而不是8覈對比2核。

  飛騰和兆芯的CPU單核性能低,每GHz的性能更低,因此總喜歡宣傳自家的產品核心多,頻率高。某些非正式的宣傳還說每GHz的性能沒有意義,用戶買CPU又不是隻買單核1GHz。而龍芯卻特別重視每GHz的性能提升,總也是有原因的吧!

  Pentium4有3.8GHz的型號,並且總能保持在3.8GHz運行。11代酷睿最高5.3GHz,但幾乎不能保持在5.3GHz運行。中端的臺式機和高端的筆記CPU通常也是運行在4.0GHz左右,視散熱情況有區別。可以說和2005的產品相比,十七年來CPU能穩定保持的頻率幾乎沒有提升。但是11代酷睿每GHz的性能相對於Pentium4卻提高了5.5倍以上,Pentium4的單核性能要想達到11代桌面酷睿CPU的水平,運行頻率要達到25GHz以上。要是頻率相同,那麼核心數量也至少要5.5倍以上,如果考慮核心越多並行性能越低的問題,Pentium4可能需要8倍的核心數量。然而這種使用弱小的單核組成的多核系統,對於絕大多數應用軟件,運行效率都不如一個強大的單核心。因爲無論軟件開發者怎麼努力,也不可能把任何任務都拆解成多線程並行。

  當然飛騰和兆芯的CPU每GHz的性能遠超Pentium4,但是仍然與龍芯3A5000有很大差距。在覈心數量相同的條件下,3A5000需要3.5GHz的頻率性能才能與i5-6400相當,多花點錢努一努力改善後端設計還是有希望的。而兆芯則需要6.5GHz以上才能達到i5-6400相當的水平,需要比Intel/AMD更強的後端設計能力,功耗肯定是控制不住了。要是與4.3GHz時的i7-1165G7相比,3A5000就需要5.3GHz左右的運行頻率,剛剛達到Intel的最高水平,而兆芯需要把頻率拉高到10GHz,超出了物理限制。

  我不是瞧不起國產CPU,而是國產CPU的設計水平、資金投入、生產工藝與Intel/AMD相比存在差距是客觀事實。CPU的頻率提升依賴強大的後端設計和與之配合完美的生產工藝,需要大量的人力和資金投入,國產CPU都還在向3GHz的頻率邁進,什麼5GHz、10GHz都是天方夜譚。

  每一款CPU核心,要想達到高頻率,都需要後端設計與生產工藝相互磨合、共同改進。我相信國產CPU如果投入大量的人力財力,花上幾十億人民幣,是可以把某一款CPU的頻率提高到3GHz以上,甚至達到4GHz的。但是有意義嗎?核心邏輯設計的水平不夠,每GHz的性能低下,像飛騰和兆芯那樣的CPU核心就算有4GHz,也不過與2.5GHz的龍芯3A5000性能相當。然後CPU核心邏輯設計有改進之後,再花幾十億精雕細琢一番,只爲了一款產品的頻率?按照國產CPU的銷量,收不回成本。未來很長一段時間,國產CPU頻率再高也高不過Intel,每GHz性能要是也差得遠,那就沒法比了。

  CPU運行頻率是要追求的,但在CPU核心邏輯設計水平低下時,一味追求新工藝和高頻率就是在朽木上雕花,浪費資源,浪費時間。飛騰的CPU每GHz的性能已經6、7年沒有提升,兆芯的從VIA得到的CPU核心比飛騰還差,至今每GHz的性能還不如飛騰。能不能把主要精力放在改進CPU核心邏輯設計上?改進CPU核心設計很難,特別是當CPU核心本就不是自己設計的時,連看懂都難。在沒有能力修改核心設計時,就只能依靠多核心、高頻率來提高CPU整體性能。因爲改進CPU核心設計很難,就忽視高頻率、多核心帶來的高功耗和高成本。不改進 CPU核心邏輯設計,把有限的資源花在邊邊角角上,就是在假裝努力,而不是在真正進步。別人的CPU每GHz的性能是飛騰和兆芯的2倍,難道飛騰和兆芯能把頻率做到同類的2倍?

  像龍芯這樣,10年間把每GHz的性能從Pentium4的水平提高到酷睿4~6代的水平,從單核性能遠低於引進技術的CPU產品,到遠遠超過兆芯和飛騰,每一代都能看到明顯的提高。只有全力設計更好的CPU核心,提高每GHz的性能,CPU頻率保持穩中有升,纔是夯實基礎、不斷進取的最優途徑。要是CPU核心長期不變,只寄希望於使用更新的工藝提高頻率、堆出更多核心,那麼不是懶就是蠢。下一代龍芯3A6000頻率可能提升不大,但每GHz的性能將與11代酷睿相當,以比6代i5低的頻率切切實實達到或超過6代i5的性能。以優秀的CPU核心設計爲基礎,再去提高頻率、增加核心,才能真正追上世界主流水平。

  宣傳達到主流水平,實際上是玩8核打2核、64核打14核的遊戲,除了欺騙用戶、玩弄國產CPU的支持者,還有什麼意義?

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。