調查數據表明,額外的微處理器內核并沒有被添加到SoC中,但你必須深入研究數字,才能發現真正的情況。原因很復雜。它們包括從軟件編程模式到市場轉變和新的用例等一切因素。因此,雖然調查數字看起來很平淡,但市場和技術動態可能會對未來重塑這些趨勢產生很大影響。
在剛剛發布的一項功能驗證調查中,強調了目前的比較,該調查由Wilson Research和西門子業務的Mentor進行。該調查基于1492名受訪者--其中約有一半參與了ASICS的調查,主要涉及芯片尺寸和處理器數量等方面。調查數據顯示,“8個或更多 ”的類別有非常輕微的增加,但幾乎在調查的+/-3%的誤差范圍內。這使得它的數量與2016年大致相同。與前兩次調查結果相比,擁有兩個處理器的SoC略有減少。
“處理器的數量在PC或便攜式設備等平臺上停滯不前,”Arteris IP的研究員兼系統架構師Michael Frank說。“這與摩爾定律趨于平緩的關系不大,而是從軟件的角度來看,要為更多的處理器找到足夠的工作變得非常困難。除非你有高度并行的工作負載,否則要讓所有這些核心都忙碌起來真的非常困難。”
工作負載也在發生變化。“對于移動應用處理器來說,這是第一大批量產品,一般架構似乎已經在8個核心的集群上穩定下來了--至少目前是這樣,”Cadence公司Tensilica IP高級集團營銷總監Larry Przywara說。“我們看到的是,做視覺和AI類型的工作負載的核心數量正在上升。”
但在智能手機市場之外,還有很多變化的空間。“我們看到從汽車到基礎設施等一系列市場的計算需求都在增加,”Arm公司技術副總裁、研究員Peter Greenhalgh說。“這意味著我們還遠遠沒有達到有用處理器的極限。新的應用有不同的需求,如功率、安全和效率。從低功耗物聯網的角度來看,我們可以預期多核解決方案的采用會越來越多。而且我們可以預期,這種趨勢將繼續增加到更多的應用和終端市場。”
Synopsys公司ASIP工具產品營銷經理Markus Willems對此表示贊同。“我們看到的情況與調查中出現的情況恰恰相反,即芯片上的可編程元件數量正在增加。這是由于非常特定于應用,或者特定于領域的那種加速器正在變得更加軟件可編程。由32位超標量內核組成的多核集群可能已經變得有限,因為內存是一個問題。”
在規模較小的嵌入式市場上,似乎有一個大的變化即將發生。“如果我們看一下嵌入式市場上出現的新芯片,它們通常是雙核、四核類型的配置,”Mentor公司嵌入式軟件部門高級產品經理Jeffrey Hancock說。“仍然有一些設備是單核的,但多核終于也要在這個領域出現了。從硅供應商的角度來看,只要人們能夠使用這些核心,只要能夠保持在他們的成本結構之內,他們就非常樂意增加核心。”
但這些數字隱藏了更大的故事。“雖然一個ASIC中的嵌入式處理器數量可能已經持平,但特定領域或專用處理器的數量卻在增加,”Mentor公司IC驗證解決方案部副總裁兼總經理Ravi Subramanian說。“我們看到,邊緣設備中的SoC正在發生本質的變化,即數據以及計算量正在增長,而且大量的計算正在轉移到應用或領域專用處理器上。”
新的工作負載的處理需求明顯不同。“采用多個嵌入式處理器的傳統ASIC計算機架構無法提供許多新應用所需的GOPS/mw/MHz,”Subramanian說。“需要注意的是,算法的復雜性遠遠超過了摩爾定律,因此,推動了新的架構。這些新架構的編程模型是共同開發的,以便共同優化編程模型和硬件架構。”
這也在推動大型數據中心架構的發展。“Arteris的Frank說:”我們看到超級計算機的核心數量會增加,因為它們的工作負載,比如有限元和大的迭代系統,很容易并行化。“ 一切有大的線性代數工作負載的東西都在很好地擴展。”
CPU的局限性
雖然通用CPU很有用,但其通用性也是一個限制因素。“其中一個問題是,CPU并不是真的擅長什么,”Frank說。“CPU擅長處理一個單線程,里面有很多決策。這就是為什么你有分支預測器,它們已經是多年來研究的主題。但是加速器,尤其是定制加速器,服務于兩個領域。一個是你有很多數據在移動,CPU不擅長處理這些數據。這里我們看到向量擴展的范圍會更廣。還有很多操作是非常特殊的。如果你看神經網絡,你有非線性的閾值和巨大的矩陣乘法,用CPU做這些事情效率很低。所以人們試圖將工作負載移到靠近內存的地方,或者移到專門的功能單元中。”
與處理器架構緊密相連的是內存。“對于一些應用來說,內存帶寬限制了增長,”Mentor的Subramanian說。“專用處理器以及內存(或接近內存)計算機架構增長的關鍵原因之一,是為了直接解決傳統馮-諾依曼架構的限制。尤其是當如此多的能量在處理器之間移動數據,以及內存與實際計算所花費的能量時,情況更是如此。”
數字中隱藏的另一件事是核心復雜性。“我們看到的是,雖然集群保持不變,但單個內核變得更加強大,”Synopsys的Willems說。“我們看到的是某些領域向64位發展的趨勢。從這個意義上說,同樣數量的核心,但能力更強。”
受軟件的限制
20多年前,PC從單核處理器轉為多核,然而能夠成功利用多核的應用程序數量仍然有限。“如果你看看你能從一個普通程序中提取多少并行性,你可以發現每時鐘周期大約兩條指令的并行性水平,”Frank說。“如果你改變你的編程模型,成為一個明確的數據流模型,在這個模型中,你有你管理的數據依賴性,你可以突然獲得13倍到20倍的性能提升。”
人類能做得更好嗎?“試著找一個能寫出能有效使用兩個線程的并行程序的程序員,”Frank補充道。“你會找到這些人的。試著找到一個人,當你沒有高度并行的工作負載時,可以使用四個以上的線程。非常困難。而且你想增加的線程越多,問題就越復雜,越難。”
面向數據的編程讓一切變得不同。“幾十年來,并行計算概念一直是計算機科學的一部分,但一直被歸為高度專業化的任務,并行處理是很困難的,”Subramanian說。“在過去的五到七年里,這種情況已經發生了重大變化,以至于大規模的并行計算成為可能。這在當今許多新的‘基于數據’的學科中尤為重要,在這些學科中,編程模型需要有效地使軟件算法能夠在非常大的并行計算架構上運行。現在,它們正在被擴展到異構并行計算架構上,我們看到新的工作負載的新的編程框架出現--Tensorflow、Caffe、MLpac、CUDA、Spark、MOA只是其中的幾個--以大大降低這些系統編程的障礙。”
進展也發生在AI領域之外。“有一些編程模型,或者編程語言,強制執行編程模型,比如Cilk,一個基于任務的模型,”Frank說。“有一些運行時庫,支持像OpenMP任務模型這樣的東西。當采用這些時,你會突然發現,你可以填滿10個處理器。因此,只要我們達到這個水平,以及這些類型的編程模型--基于任務的、數據依賴管理的程序模型--你就會發現,處理器的增加會有下一步的發展。”
還有其他因素促使人們關注多核編程。“有些人是從功能安全或安全領域來看待多核的,”Mentor的Hancock說。“設計人員需要將多核隔離,或者說分離成各個子系統,以便保護一些東西。然而,人們不愿意改變。你需要開拓者來引領潮流,可能要發生一些大事件。在這之前,他們傾向于建立在他們已經知道的和舒適的基礎上。汽車業需要像特斯拉這樣的人去撼動一切。傳統的汽車公司最初只是看到山谷里的一家創業公司,就把他們拒之門外。突然間,他們注意到了,并意識到自己需要做出改變。”
新驅動程序
雖然智能手機仍然是銷量和美元的領頭羊,但它們不再是導致技術進步的唯一細分市場。“汽車應用中的計算正在經歷一場令人難以置信的轉變,其驅動力是對更沉浸式、更豐富的車內體驗的需求,不斷提高的安全和便利的自動化水平,以及向軟件定義功能的發展,”Arm的Greenhalgh說。“這導致單個電子控制單元(ECU)迅速整合為更少的多功能ECU,這不僅需要以多核CPU的形式提供更多的CPU計算能力,還需要部署異構計算元素。我們現在看到SoC的多核CPU越來越多,同時也得到了GPU、ISP和ML加速器的增強,使得軟件可以部署到每個工作負載最有效的計算元素上。”
進入汽車芯片的計算能力是驚人的。“趨勢肯定是朝著特定領域架構、片上和片外加速器以及嵌入式可編程邏輯的方向發展,”OneSpin Solutions的技術營銷經理Sergio Marchese說。“對于許多應用來說,把更多的標準處理器扔到一個問題上并不是最有效的解決方案。例如,如果你看看特斯拉全自動駕駛芯片,它有12個Cortex-A72處理器,占據了很大一部分芯片面積。然而,兩個神經網絡加速器占用的面積幾乎是它的兩倍。”
Cadence的Przywara對此表示贊同。“我們在汽車領域看到的用于支持自主汽車中更復雜的Level 2、Level 3的是多核DSP集群來支持雷達,以及支持越來越復雜的AI算法的引擎。我們看到的例子是,由于所需的TOPS數量,可能多達8個以上的AI引擎被用來運行AI算法。”
人工智能本身就是一個驅動力。“對于人工智能來說,它是關于如何處理內存訪問和地址計算的問題,”Willems說。“我們看到了很多活動和很多正在開發的處理器,這些處理器不是現成的那種處理器。有些系統會有多個AI處理器,只是因為它們有一個始終在線的功能,它們需要處理一些事情,然后它們會喚醒另一個AI處理器來做一些更大規模的計算 所以,你可能會有多個處理器分配到任務。”
AI也在影響更小的邊緣設備,以及。“MCU正在承擔起進行機器學習的能力,”Przywara說。“TinyML正在幫助推動這一點。這是他們傳統上沒有使用的東西,但隨著越來越多的人工智能和機器學習的應用被研究和開發出來,這將成為MCU或所有產品變得更有能力的驅動力。這將推動這些設備中的處理核心數量越來越多的趨勢。”
5G也在產生相當大的影響。“一個無線電調制解調器過去有一個大的大規模DSP,”Willems說。“它足夠強大,可以依次或交錯運行必要的任務。轉移到5G,很明顯,一個單一的DSP已經無法完成工作。相反,他們把某些東西剝離出來,變成多個可編程加速器--一個DSP專門負責某些功能,比如做矩陣反轉或均衡。但它并不都是同一個DSP,也不是它的倍數。它是多個內核,每個內核由指令集和內存接口專門化。”
基站的處理器增長幅度更大。“對于5G基站應用,我們看到大量的核心接近近100個核心,來完成工作負載。”Przywara說。“5G,當然是在基礎設施方面,將會把事情推高。”
未來發展
那么未來我們應該期待什么呢?“會有更多的特殊處理器,”弗蘭克說。“在標準SoC領域,我預計處理器內核數量會增加,可能會達到256個內核,但不會用于PC、筆記本或手機。我們將看到的地方是針對汽車的嵌入式系統,與機器學習方面相比,對高性能和連貫性的要求越來越高,變得更加重要。”
為了利用它,編程模式必須改變。“由工作負載能力和性能效率驅動的新計算機架構的ASIC數量正在快速增長,”Subramanian說。“對解決大量各種工作負載的解決方案的需求(如語音識別、X射線分析、物體檢測、面部識別、生物細胞的進化)已經在迫使計算分析的新領域的發展,開發新的數學模型來理解具體問題。而且它正在迅速地將這些發現帶入計算機科學的世界,特別是新計算機架構性能的分析。這導致了計算機架構世界正在向異構、多處理架構發展,并從馮-諾依曼向神經形態計算架構發展。我們今天剛剛開始了計算機架構的復興。”
也許是時候重寫調查問題,以更好地反映芯片處理能力的演變。也許應該確定獨立指令流的數量,或者控制線程的數量,但所有這樣的指標將繼續偏向于今天的控制驅動范式。
責任編輯:tzh
-
處理器
+關注
關注
68文章
19349瀏覽量
230293 -
芯片
+關注
關注
456文章
50965瀏覽量
424837 -
mcu
+關注
關注
146文章
17185瀏覽量
351724 -
soc
+關注
關注
38文章
4182瀏覽量
218512 -
AI
+關注
關注
87文章
31155瀏覽量
269487
發布評論請先 登錄
相關推薦
評論