資深攻城獅解讀5個被誤解的CPUGPU概念
從英特爾1971年推出第一款商用微處理器4004到現在,處理器已經走過了三十多年的歷程,目前,CPU處理器已經從服務器、PC發展到嵌入式、工控、消費、醫療等各個領域,但是從總體架構上來看,CPU的架構并沒有太大改善,不過也有一些新的架構突破,作為一個一直跟CPU打交道的工程師,感覺很多人被一些概念誤導,這里談談5個被誤解的CPUGPU概念。
1、 多核與多線程
提起多核與多線程,很多人首先會想到手機中的多核大戰,而忘記了多線程技術,從單核到雙核到四核再到8核,似乎多核才是處理器發展的王道,但是大家想過沒有?為什么到了8核之后多核之戰就打住了呢?多線程技術到底有沒有優勢?
其實多核有個的缺陷就是隨著內核數量的提升,性能的提升并不跟核數增加成正比,按照阿姆達定律:一個程序存在兩部分,只能串行計算的部分S,和能夠并行計算地部分P。兩部分之和是整個程序,因此S+P=1。這個程序如果在一個具有N個核心的處理器上運行,那么和它在一個單核處理器上運行相比,速度的提升是1/(S + P/N)。當N趨近于無窮大時(即假設我們有無窮多個核心),速度提升的上限是1/S,即速度提升的上限取決于程序不能被并行計算的部分。
這個定律的結果就是,即便我們能夠有效地并行計算一個程序的 95%,剩下 5% 只能串行計算的部分限制了這個程序的運行速度最多能提升 1/5%=20 倍。而現有的程序中很少能夠做到 95% 以上部分的并行計算。這張圖顯示了對于4種不同類型的程序(分別有50%,75%,90%,95%的部分能夠并行處理)的速度提升相對于處理器核心數量的關系,縱軸是相對于單核處理器速度提升的倍數,橫軸是處理器核心的數量。可以看到4條曲線隨著處理器核心數量的增加逐漸趨于平坦。
現在的多核處理器還遠遠沒到擁有 1,000 個核心的時候。然而未來的某一天,不管是軟件還是硬件工程師們也許會滿頭大汗地向客戶解釋這個問題:為什么最新的 1,000 核處理器比舊的 100 核處理器快不了多少?
所以多核的發展路子是有局限的,再來看看多線程技術,多線程(英語:multithreading),是指從軟件或者硬件上實現多個線程并發執行的技術。具有多線程能力的計算機因有硬件支持而能夠在同一時間執行多于一個線程,進而提升整體處理性能。其實這個技術是非常好的,現在英特爾在PC處理器領域基本是走的多線程的路子。它最新的CPU都是四核8線程。
多線程技術可以在不顯著增加功耗和面積的條件下提供性能的穩定增加,舉例來說,雙核和單核雙線程,每增加一個線程有50%穩定線性增加,但是對于多核來說,雙核比單核有50%提升,但是三核只有30%提升,而四核只有20%的提升了。
而且從開發難度來說,多線程開發難度要弱于多核,多核是需要大量人工優化的,后期需要芯片廠商和系統廠商投入大量的人力物力,而得益于英特爾的普及,軟件系統對多線程的支持已經很成熟了,Linux早就支持多線程了,而且多線程開發是CPU自動分派任務不用人工參與,這樣可以提升開發效率。
所以,未來CPU的發展除了從32位升級到64位,在多核多線程的應用上不應該割裂開,多核多線程可以提升CPU的能效,解決性能和功耗的矛盾。
2、MIPS CPU內核與ARM CPU內核
現在ARM處理器名氣很大,很多人認為一定是ARM CPU內核強于MIPS CPU內核,其實這是個錯誤認識,有時商業選擇中技術因素并不是主導因素,往往其他因素才是主導因素。
在2000年前后,MIPS處理器在中國的名聲也是非常大,畢竟它是RISC處理器架構的發明者,但是,ARM處理器在2000年初進入中國后,通過生態系統打敗了MIPS內核。當時把ARM帶入中國的譚軍博士在高校推廣ARM處理器,開發很多教程,還到處舉辦培訓和講座,另外,針對中國IC設計公司缺乏設計能力的現狀,ARM推出了針對中國IC半導體公司的授權策略和硬核模式,大大降低了CPU的開發難度。
以前,CPU設計都是高高在上皇冠上的明珠,ARM把CPU設計變成了搭積木時的設計,大量中國半導體IC設計公司采用了ARM內核,而且ARM也構建了比較好的生態系統,借助手機大發展起來。而MIPS當時在中國的生態系統做的不夠好,也不調整自己的授權模式,因此敗北是必然的。
不過,自從MIPS被Imagination收購后,反而有了大發展,我分析一個原因是Imagination強化了生態系統建設,例如和包括博通、Cavium、Ikanos、Ineda Systems、Ingenic Semiconductor、Lantiq、Nevales Networks、PMC和高通等共同成立prpl基金會。這也是強化生態系統的節奏,而且有很多大牌公司加入。
Imagination除了強大的GPU外,還提供CPU,ISP、VPU、zigbee藍牙wifi,4G LTE等多種內核,而且提供了針對物聯網,云計算的IP產品,可以算是提供最全IP的公司,MIPS內核一直以低功耗著稱,隨著生態系統構建好,未來物聯網大爆發,Imagination機會很多啊。
3、 安全性誰家強?
自從“棱鏡門”曝光后,安全已經成為移動通信設備和其他便攜式電子設備最關注的焦點,如何提升設備的安全防護水準?顯然,從芯片就開始提供設備的安全防護是最有效的舉措。ARM公司于2003年提在嵌入式領域出了TrustZone技術,為硬件系統提供安全保護,這個技術安全嗎?
我看過Imagination Technologies公司CEO HosseinYassaie在接受媒體采訪時說“打個比方說,這個TrustZone技術就像是銀行的一個保險柜,你可以把認為安全的應用都放進去,在以前,應用都比較單一,這樣的安全防護也許有一定的作用,但是現在,手機等移動設備都集成了很多應用,這些都放在一個保險柜中顯然安全風險就增大了很多?!?/p>
在CPU內核的設計中集成系統安全性擴展,是TrustZone在ARMv6內核架構下的重要擴展特性之一,TrustZone分離了兩個并行執行的環境:非安全的“普通”執行環境;安全可信任的“安全”環境,但是問題來了,如果一個應用偽裝成“可信任的”進入到你的安全區會怎么樣?其他應用和數據還會安全嗎?
因此全局硬件虛擬化(Virtualization-VZ)技術才是一個真正安全的技術,Hypervisor之于操作系統類似于操作系統之于進程。它們為應用執行提供獨立的VZ虛擬硬件平臺,而VZ虛擬硬件平臺反過來又提供對底層機器的虛擬的完整訪問。Imaginaition將把Hypervisor VZ全局硬件虛擬化技術從傳統服務器領域帶入現代嵌入式領域的每一個角落。
全局虛擬化就是每個應用都是獨立的沙箱操作,兩個不同窗口都是不同的沙箱
這樣一來,黑客攻破難度大很多很多,攻破一個完全虛擬的是非常難的,你都知道到它的原理去怎么攻破?
4、GPU未來拼什么?
PC時代,GPU基本都是完成3D圖形加速,而移動互聯時代,隨著智能化的提升,GPU強大的并行能力可以把它的應用拓展到更多領域,GPU應該是其未來的發展方向,現在安卓已經可以支持GPU通用計算。
我看很多評測機構也在看GPU在手機平板等產品上的重要作用,GPU不僅游戲體驗,在照相處理、UI顯示、滑動處理甚至安全方面都在發揮巨大作用,我看很多復雜應用CPU也就開到2、3個核而GPU是應用的主力軍,所以,未來GPU的地位會提升很多。尤其隨著AR\VR應用的普及,更需要強大的GPU來支持的。
5、緩存、亂序和流水線的秘密
其實看到自從CPU誕生到現在,一直在解決CPU和內存的瓶頸問題,而且這個問題一直沒有得到解決所以業界是通過增加緩存來解決,很多移動處理器已經增加了一級緩存二級緩存甚至三級緩存,所以大家在比較CPU性能的時候,別光看CPU的主頻,還要看CPU的緩存面積以及帶來的DDR功耗問題,要看整體功耗。
如何衡量CPU的性能?其實很簡單,執行相同任務時功耗越低越好。而且要多比較,采取不同常用的場景來測試SOC功耗。
還有CPU常用的流水線、亂序等概念,流水線理論上是級數越多跑的越快,比如9級比7級流水線跑的快,但是如果執行不夠,CPU就會空跑,形象地比喻就是吃飯時噎住了。
我覺得CPU未來解決性能問題有幾個方向:
一個是,單核增加流水線,增加發射,從單發射到雙發射到四發射(發射越多執行指令越多),但這個發展方向似乎走不通。
另一個方向就是增加多核多線程,增加并行度,這里再提提MIPS內核,其實這個內核架構很好,沒有多核數量的限制,一些網絡設備都有上百個內核的產品。
還有是可以亂序執行,這是提升效率的方法,一般高端CPU有亂序執行功能。
我個人認為CPU的時代已經過去了,未來是異構SOC的時代,協處理器會大發展,什么VPU、DPU、ISP、無線IP等等會采用更多,比如聯發科6595中的4K視頻編解碼器就是一顆協處理器,它完成了非常復雜的功能。
非常好我支持^.^
(2) 100%
不好我反對
(0) 0%
相關閱讀:
- [電子說] Blackwell GB100能否在超級計算機和AI市場保持領先優勢? 2023-10-24
- [電子說] 如何使用Rust創建一個基于ChatGPT的RAG助手 2023-10-24
- [電子說] 射頻識別技術漫談(27)——CPU卡概述 2023-10-24
- [電子說] 講一講Apple Macintosh處理器過渡的故事 2023-10-24
- [電子說] 國產金融工控機的廣泛應用領域和獨特優勢 2023-10-24
- [人工智能] 研華推出EPC-B3000系列嵌入式工控機,搭載先進X86架構CPU,助力邊緣人工智能應用 2023-10-24
- [電子說] 異構時代:CPU與GPU的發展演變 2023-10-24
- [電子說] RISC-V要顛覆GPU嗎? 2023-10-24
( 發表人:wuzhan )