熟女俱乐部五十路二区av,又爽又黄禁片视频1000免费,国产卡一卡二卡三无线乱码新区,中文无码一区二区不卡αv,中文在线中文a

新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 當今的處理器架構能否更高效?

當今的處理器架構能否更高效?

—— 處理器優(yōu)化這個唾手可得的果實可能已經消失,但新技術正在涌現(xiàn)。
作者: 時間:2025-07-21 來源: 收藏

多年來,在專注于性能的同時幾乎沒有對其他任何東西負責。但現(xiàn)在,性能雖然還是很重要的參考指標,但還必須對負責。

如果性能上的微小提升導致不成比例的功率增益,設計人員可能需要放棄此類改進,轉而采用更節(jié)能的改進。盡管當前的在性能和方面不斷改進,但實現(xiàn)額外的增益變得越來越困難。

“每個人都在檢查和重構他們的微,以期能通過改進它們來實現(xiàn)更出色的表現(xiàn),”Cadence Tensilica 音頻/語音 DSP 產品營銷總監(jiān) Prakash Madhvapathy 說。

許多旨在提高計算吞吐量的功能(例如無序執(zhí)行)增加了電路的復雜性,從而提高了功率和電路面積。由于功耗成本的原因,類似的改進今天可能不會被接受。那么,我們當前的處理器還有哪些機會呢? 

高效的實現(xiàn)還不夠

“許多提高效率的努力都涉及對現(xiàn)有架構進行更好的設計,并且仍然需要一些新的技術突破。特別是在實施方面要融入更多節(jié)能技術,”Ansys產品營銷總監(jiān)Marc Swinnen說。一種非?;镜姆椒ㄊ抢昧鞒谈倪M,以更少的功率完成更多工作?!澳柖刹]有消亡,” Swinnen說?!拔覀內栽讷@得更小的工藝技術,這一直是降低功耗的首要方法。摩爾定律可能很快走到盡頭,但現(xiàn)在還沒有完全實現(xiàn)?!?/p>

這也可以推動流程決策?!爱斈氵x擇某個工藝節(jié)點時,你還需要考慮到能效,”Madhvapathy 說?!?2nm從基礎上來看比28nm具有更好的功耗曲線?!彼赋?,12nm將是節(jié)能設計的另一個流行節(jié)點。

3D-IC 提供了介于單片芯片和 PCB 級組件之間新的功耗節(jié)點。Swinnen指出:“3D-IC的功耗將比單片芯片更高,但3D-IC的整體系統(tǒng)功耗更低,速度比通過傳統(tǒng)PCB走線連接的多個芯片系統(tǒng)的要低得多。

共封裝光學器件 (CPO) 使光學器件更接近硅,這也可以降低功耗,但這已經等了很長時間?!癈PO 已經存在了很長時間,但在經濟上很難證明技術復雜度的合理性,而且最終的權衡不一定是有利的,”Swinnen 解釋道?!安贿^這似乎正在發(fā)生變化。部分原因是技術變得更好,部分原因是對高速數(shù)字通信的需求變得如此強烈,以至于人們愿意為此支付更多費用。

 并非所有技術都實用

有些實現(xiàn)技術聽起來很有趣,但也有其自身的挑戰(zhàn)。異步設計就是其中之一?!皬暮玫姆矫鎭碚f,每個寄存器都會盡可能快地與下一個寄存器通信,”Swinnen 解釋道。“沒有中央時鐘,所以整個時鐘架構都消失了。沒有時間給你等待,其中一條數(shù)據路徑正在等待其他數(shù)據路徑。它已經存在了幾十年,但由于性能不可預測,它未能突破(特定情況除外)。這是一個猜謎游戲,突破的時間點會是什么,由于工藝的可變性,每個芯片都可能略有不同。也不清楚它最終是否真的節(jié)省了電力?!白詣佣〞r握手意味著觸發(fā)器電路必須復雜得多,”斯溫寧說?!爱斈惆阉磕贸鰜頃r,所有觸發(fā)器電路都會消耗更多的電力。一個問題仍然存在:“它真的最終會為所有這些復雜性和缺乏可預測性節(jié)省很多電力嗎?綜合來看,它還沒有能夠作為一種設計方法論得到公認。

也可以使用數(shù)據和時鐘門控來馴服雜散電源或毛刺電源以降低功耗?!八鼤黾用娣e,但對雜散電源的影響可能相當大,”Madhvapathy 說。這需要分析以確定功耗的主要貢獻者?!八粌H可以測量毛刺功率,還可以識別導致此毛刺的原因,”Swinnen 指出。

最后,每一個問題在實現(xiàn)層面上的影響有限?!癛TL能走多遠是有限制的,這很諷刺,因為大多數(shù)節(jié)能機會都在RTL級別,”Swinnen 說?!白畲蟮暮锰帉嶋H上是在架構層面?!?/p>

 昂貴的功能

人工智能(AI)計算已將設計團隊推向內存墻,因此鑒于行業(yè)對AI訓練和推理的關注,人們將大量注意力轉移到將數(shù)萬億個參數(shù)放在需要的地方,以避免摧毀系統(tǒng)。但處理器本身也會消耗能量,其他工作負載將在執(zhí)行能力和數(shù)據移動能力之間表現(xiàn)出不同的平衡。

盡管時鐘頻率繼續(xù)逐漸攀升,但這種變化實際上并沒有像以前那樣推動性能提升。改進的真正目標是試圖讓盡可能多的處理器保持忙碌。三個架構特征可以說明為這種收益所做的復雜變化——推測執(zhí)行(也稱為分支預測)、無序執(zhí)行和有限的并行性。

 推測執(zhí)行的目的是避免輸入分支指令并且必須等待結果后再決定遵循哪些分支的情況。到那個點時就會延遲結果,直到系統(tǒng)獲取分支結果指示的指令——可能一直來自DRAM。相反,推測性地遵循一個分支——希望是最有可能的分支。通常,完成分支決策將驗證該決策,但有時不會。此時,必須退出推測計算并重新啟動另一個分支(包括從 DRAM 獲取的潛在指令)。

 分支預測通常伴隨著無序執(zhí)行,該功能允許某些指令以與它們在程序中的顯示方式不同的順序執(zhí)行。這個想法是,一條指令可能會停頓等待數(shù)據,而另一條后續(xù)指令現(xiàn)在已準備就緒。請注意,后一條指令不能依賴于前一條指令,但串行編程范式的主要限制之一是指令必須按順序列出,即使它們不相互依賴。所以亂序執(zhí)行是一個復雜的系統(tǒng),可以提前啟動多條指令,確保原始程序語義得到尊重。

圖片.png


圖 1:Intel 處理器微架構示例。此特定單元包括亂序處理。由于需要向后代碼兼容性,因此在執(zhí)行之前,首先將指令轉換為微代碼。此模型有 11 個函數(shù)單元,其中 8 個用于執(zhí)行,3 個用于數(shù)據加載/存儲。

 面積與性能

這些架構并不是簡單的系統(tǒng),它們的價格可能與其收益不成比例,具體取決于它們的構建方式?!袄?,分支預測器會保留先前采用的分支列表,”西門子 EDA 高級合成部門項目總監(jiān) Russ Klein說?!熬拖窬彺嬉粯?,該列表通常使用分支目標的底部N位作為哈希鍵進入所采用的分支列表。因此N可以是4或16或更多,列表中的條目數(shù)可以是1或2或32。您可以存儲完整的目標分支地址,或者僅存儲底部12位或16位。對所采用的分支的更大、更詳細的存儲器會帶來更好的性能,但顯然會占用更多的空間(和功率)。

由此產生的好處可能會相應地有所不同。“一個小型的簡單分支預測器可能會將處理器加速 15%,而一個大型、復雜的分支預測器可以將性能提高30%。但它可能比小而簡單的處理器面積上大10倍(或更多),“Klein解釋道?!熬兔娣e而言,對性能設計者也許不是那么在意,但對于功耗來說,面積確實是一件大事。”

Cadence 通過重組某些編解碼器來提高它們的性能,從而產生分支很少的代碼?!拔覀兛吹娇冃岣吡思s5%至15%,”Madhvapathy 說?!熬幗獯a器中的分支數(shù)量不到5%,在我們使用 ZOL(零開銷循環(huán))的內部執(zhí)行循環(huán)中幾乎沒有分支?!?/p>

更通俗的說,該公司在典型項目中找到了更多的分支?!胺枪俜降拇a大約有20%的指令是分支,”Madhvapathy?!斑@些都代表著隨機執(zhí)行的機會。性能提升可以達到30%或更高,因為每個周期執(zhí)行的平均指令會顯著增加——即使這些預測中有一半是成功的。綜合開銷 [分支預測和無序執(zhí)行] 可能在20%到30%的范圍內。

Klein回憶起 Tilera 的創(chuàng)始人阿南特·阿加瓦爾 (Anant Agarwal)對Kill Rule的觀點?!敖K止規(guī)則規(guī)定的是,如果你要將一個功能放入你的 CPU 中但它會增加面積,如果增加的面積大于你獲得的性能提升,你就不會添加該功能,”他說。

 并行計算是“簡單”的答案

并行性顯然提供了另一種提高性能的方法,但當前處理器中可用的功能是有限的。當今的主流處理器有兩種方式提供并行性——通過實例化多個內核,以及通過內核內的多個功能單元。

功能單元是過去的簡單算術邏輯單元(ALU),它是執(zhí)行實際指令的。給定的功能單元通常能夠執(zhí)行簡單數(shù)學之外的一定數(shù)量的指令。它們還可能包括乘法器、分隔器、地址生成,甚至分支。通過提供多個這樣的單元,當一個單元繁忙時,另一個單元可以處理不同的指令,這可能是無序的。

不同的處理器具有不同數(shù)量的功能單元,代碼分析有助于確定其中指令支持的組合和分布。這有助于在可能的情況下并行化指令執(zhí)行,但處理器開銷(例如指令獲?。┦谴邪l(fā)生的。

真正并行化計算是提高性能的最佳機會之一,并且可以使用較少的處理器以提高能效。這樣的解決方案并不新鮮,多核處理器在十多年前就已上市,但未能獲得真正意義上的關注。

 很少有算法是完全可并行化的。那些通常被稱為“令人尷尬的并行”。其他所有內容都混合了可并行化的代碼和必須串行運行的段。阿姆達爾定律將這些連續(xù)部分確定為最終限制器。有些程序可以高度并行化,有些則不然。但即使算法看起來不并行,也可能存在其他機會。

 分形就是一個例子?!澳愕?nbsp;f of x 就是 f of x – 1,” Klein解釋道。“每個像素都是通過長串行鏈單獨計算的。但是,如果你正在制作圖像,你有 1,024 x 1,024 或任何圖像大小,所以你有很多并行性的機會 [通過同時計算多個像素]。

當今用于數(shù)據中心服務器的處理器具有多達100個左右的內核。但與之前的多核處理器不同的是,它們不用于單個程序。它們允許為需要云計算的不同用戶執(zhí)行多個程序。

并行的問題

即使處理器執(zhí)行可以并行化,真正的問題是處理器必須并行編程。這通常意味著顯式管理代碼的并行性質,例如通過調用pThreads。這比典型的編程要繁瑣得多,需要了解數(shù)據依賴關系以確保滿足按順序的語義。盡管已經存在一些工具來幫助解決這個問題,但沒有一個工具進入現(xiàn)在的主流軟件開發(fā)。

此外,手動管理并行性可能需要針對不同的處理器使用不同的程序。程序可以運行,但如果需要的線程數(shù)超過給定處理器在硬件中可以管理的線程數(shù),則程序可能不是最佳的。由于上下文切換過程中不可避免存在系統(tǒng)開銷(虛耗),使用軟件并行性可能會損害性能。

最大的問題是軟件開發(fā)人員對顯式并行編程嗤之以鼻。人們強烈希望任何新事物都可以使用當前的方法進行編程。“軟件專家已經堅決拒絕了100核處理器的概念,除了我們看到它開始蔓延的一個領域——GPU和TPU,” Klein觀察到。

這就是多核處理器在商業(yè)上失敗的原因。即便如此,并行化主要還是與性能有關。降低功耗需要適度的核心數(shù)量和積極的待機功耗策略,以便空閑核心不會消耗能量。并行性還有助于恢復在提高內核效率時可能丟失的整體性能。

“我的論點是,大量真正簡單的CPU是正確的選擇,但它確實需要改變編程方法,” Klein說。“我對這種情況的唯一希望是人工智能能夠創(chuàng)建一個并行編譯器,這是我們作為一個行業(yè)永遠無法做到的事情?!?/p>

我們今天處理在通用處理器上陷入困境算法時的實用方法是使用加速器作為非阻塞卸載,以便加速器可以在 CPU 執(zhí)行其他作(或休眠)時有效地處理其任務。

加速器可以是寬的,也可以是窄的

 所有類型的加速器已經存在了幾十年。如今,人們非常重視那些可以加快訓練和推理速度的加速器,因為需要非常具體的密集計算。但這樣的加速器并不新鮮。

“異構計算結合了處理內核,以提供優(yōu)化的功率和性能,”艾伯德營銷副總裁Paul Karazuba 說?!斑@顯然包括NPU,NPU解決了來自效率較低的CPU和GPU進行AI處理時的問題。然而,并非所有NPU都是平等的——不僅在方法上,而且在架構和利用率上。

這是因為加速器可能是高度特定的——甚至是定制的——而其他加速器將仍然是更通用的?!叭绻鸄I工作負載是眾所周知且穩(wěn)定的,定制NPU可以在功耗和成本效率方面帶來顯著提升,”Karazuba 繼續(xù)說道?!叭绻枰`活地支持多種模型或未來的人工智能趨勢,通用 NPU更具適應性,更容易與現(xiàn)有軟件生態(tài)系統(tǒng)集成。”

自定義加速器將更具體地根據其工作負載進行調整,并且這種努力應該會提高功耗效率。Karazuza 說:“提高處理器子系統(tǒng)效率(特定于NPU)的一種方法是創(chuàng)建一個更注重應用程序的NPU,而不是采用更通用的NPU?!白远xNPU通常使用專門的MAC陣列和執(zhí)行管道,這些陣列和執(zhí)行管道可以針對特定數(shù)據類型和模型結構進行調整。通用NPU包含支持多種數(shù)據類型的可配置計算元素,通常可處理更廣泛的層和運算符。

放棄給定任務不需要的功能可以產生顯著的結果?!霸趯嶋H應用中,當部署定制NPU時,Expedera通常會看到處理器效率提高約3-4倍(以 TOPS/W 為單位)而利用率提高兩倍以上,這里的利用率定義為實際吞吐量/理論最大吞吐量?!?/p>

顯然在提高處理器和處理子系統(tǒng)的效率方面,仍然存在一些機會。但在不久的將來,我們可能會面臨想法耗盡的風險。然后會發(fā)生什么?這就是新的處理器架構可能有用的地方。然而,考慮到當前架構背后的龐大生態(tài)系統(tǒng),這樣的變化并非易事。幸運的是,有一些新的架構想法以及放棄一些通用性的可能性。


評論


相關推薦

技術專區(qū)

關閉