請問 X86 與 ARM 的功耗控制有什麼區別?

時間 2021-05-07 03:20:15

1樓:夏晶晶

爐石的英雄難度冒險有點難………跪完出來就掃到這麼個老問題。

我覺得已有的很多回答都不太準確,包括幾個大V。我做了十多年ARM,打個9分不過分,而intel作為最大的對手,常年惺惺相惜的打個6分也不過分。夠資格說兩句。

先說答案再說推導。答案是:X86在功耗控制技術上是有相當的領先,但為什麼表現上x86處理器功耗高於ARM,這裡面有一些可以確認的原因,但還有部分原因是未知的。

我了解ARM CPU的整個設計流程、工具應用、TSMC的工藝情況,但我對INTEL內部CPU的設計流程、工具和工藝的具體引數還沒有親自經歷過(只能獲得一些rumor),我在等intel啥時候挖我去做架構師或者設計親手幹三年,充分對比答案才能足夠清晰。

先給乙個我的經驗資料,請不要糾結準確性,大致是不會錯(這數字是值錢的)。乙個當今業界頂級效能的伺服器CPU CORE(效能幾乎乙個水檔位吧)單核心,intel cpu自家14nm工藝,5.5W,2.

6GHGHz,AMD CPU用TSMC 7nm工藝,2.6W,2.2GHz,某同級ARM CPU TSMC 7nm工藝2.

2W,2.6GHz。這只是紙面上的資料,還不能作數,裡子還有秘密。

AMD在這個頻點基本上已經把電壓控制到了Vmin即0.675V的緯度,而ARM這個頻點高於Vmin不少,常見是0.81v向上,這涉及CPU微架構上的一些理念。

而intel雖不至下到Vmin但也也不遠(他家14nm的Vmin會高一些),剩下就是intel自家工藝的問題了。

歸一化來講,ARM:AMD:intel的單核能效比是1:1.5:3的位置,上面數字算不出這個比例,得細了說。

首先看吧,說RISC比CISC節能的,並不太靠譜。AMD和ARM採用同樣工藝時,差異是相近的。原則上,在CPU定義了uops之後,RISC和CISC在Decode之後的設計已經差異不大了,當然基於CISC曾經的歷史遺留負擔,X86體系的decode會有較大的包袱,除此之外CISC並無劣勢,而且還能額外享受m-op cache收益。

其實說回來,CPU效能到一定高度,CISC比RISC更加優秀。ISA作為使用者和機器的中間語言,溝通最大的障礙就是翻譯過程資訊的缺失。你看CPU的prefetch演算法天天研究啥,不就是猜使用者在幹嘛嗎?

有時候猜乙個loop就費老鼻子勁了,但乙個loop,編譯器不知道嗎? 知道,沒法說給硬體聽啊。OoO也是,指令的ILP情況編譯器不是更清楚?

硬體還是不知道啊。未來要進一步提公升效能,擴充套件ISA,適度複雜化,把資訊通過無實際功能意義的ISA-HINT傳遞給硬體是必不可少的路徑,指令發射數已經夠高了,多發射一些不是啥大事。再說題外話,求大家別想著把RISC-V搞成高效能CPU啦,基因不對,精簡是精簡了,但能夠傳遞給硬體的資訊更少得可憐,指令密度也低得要死,高階的技術很多用不好。

以RISC-V的精簡,是為了DSA而存在的,那是Patterson的原意。

OK,回到正題,參考同工藝AMD和ARM的情況,如果能拋棄一些負擔,x86的能效是能夠接近ARM的。那為啥intel還差那麼多?

首先當然是工藝,intel的14nm工藝是落後TSMC 7 nm一代的。如AMD蘇阿姨所說(下圖),工藝帶來的收益可以佔到40%。

但是還是奇怪,算上工藝差異之後還有乙個巨大margin,要知道開始說了intel的功耗控制能力是領先ARM的。這個margin是我一直沒有完全確定原因的空隙。從某些線索猜測,intel的實現流程和EDA tool有問題!!!

曾經rockchip享受過intel的代工(ω)。結果大家都看到了,呵呵。跟李詩勤不夠熟,不好意思問他來完善這個拼圖。

2樓:李楠

其實這個問題已經和技術關係不太大了。

技術研發的組織模式產業的利益分配以及整個產業鏈最終的賽道選擇

已經注定了在觸控,廣域無線網的移動領域, X86 注定無法對抗 ARM 了。

知乎這地兒一堆槓精,這三點,就不展開說了,反正自己慢慢 Google ,也能搞明白一些。

如果 X86 陣營今天還在談指令集的優劣,多核心的控制,其實是沒弄明白到底為什麼輸了。

3樓:「已登出」

這個問題有什麼好提的。很簡要的回答就是複雜指令集類CPU需要消耗大量電晶體及功耗進行實現及運算排程過成簡化。精簡指令集CPU就沒這些玩意依靠軟體實現運算資源排程過程。

這樣同樣的效能精簡指令集的CPU耗費的電晶體功耗要比複雜指令集的少至少一倍還不止。。

4樓:

ATOM在Android平台的表現並不能說明X86能效差,因為Android-X86還牽扯到乙個指令翻譯問題,指令翻譯不僅折損效能,也會讓本來效能需求小的程式由於指令翻譯而占用更多的效能,結果就是CPU利用率和頻率都跑在比較高的位置,而ARM省電的方式就是關核、降頻、大小核心,甚至寧願低頻小核心限制效能,跑得慢點又不是不能用,但加上指令翻譯再想跑得慢就真的不能用了。

同理,驍龍835筆記本在win10上的功耗表現真的很好嗎?52Wh的NovaGo也就待機表現和使用一些為ARM重新編譯的軟體能效比高些,這還是因為把本身賽揚級別的效能拆成了8顆核心來實現,可以動態的關閉任意核心數,但是Intel或者說主流X86處理器都是高頻大核心,雙核處理器沒法關閉1.5或者1.

7個核心。再加上Windows上的軟體對效能的要求高,就算ARM處理器能夠直接執行x86的應用,在CPU跑滿載的情況下,ARM為功耗所做的努力就很難體現出來了,也就是在待機上確實時間長。

針對高效能的設計和針對低功耗的設計從一開始就不同,說白了讓Intel去造ARM處理器絕對能造出一顆高效能的處理器,指令集的影響沒那麼大,畢竟底層實現對於Intel這種老手來說並不難,但是這顆ARM處理器的功耗也不會低。

X86的功耗之中還有一些由於向後相容增加的功耗,反觀ARM在移動領域興起之前許多指令集都沒有,因此可以避免走很多彎路,也不需要去相容很多舊的東西。在功耗只有幾瓦的SOC上來說,連PCIE通道和高效能記憶體控制器都是奢侈。

5樓:馬文翰

功耗應該只和製程電晶體數量和電晶體開關頻率有關吧。x86和arm只是乙個基於面積的計算多點,乙個基於時間的計算多點,個人是這麼認為的。

6樓:跨考狗

如果4300Y打到9wTDP效能還是可以的能流暢跑文明5。

如果壓到850的5w我覺得比較難。但是850能不能在win10上流暢跑文明5也是乙個問題。

同時你要想到大螢幕也很耗電平板和筆記本的螢幕面積就算是8寸也比手機大一倍不止吧

7樓:jiangtao9999

都在扯。

實際情況是,x86 有龐大的指令和電晶體作為後台支撐。

這帶來的效果就是,可以在更大的情況下,在乙個指令週期完成一件事。而 ARM 的指令集非常小,很多事情都要拆開在多個指令用多個週期完成。指示相對來說 ARM 的指令針對性更強。

在 ARM ,甚至可以說在很多伺服器領域,這些少量的指令,依然可以覆蓋大量的計算任務。

但是各位也別忘了,伺服器領域,ARM 依然只有很少的市場,主要還是靠更多核心來應付的高頻實時響應的應用方向。對應的市場差不多就是資料庫。而在其他領域,依然還是 x86 的強項,因為 x86 的總體適應性更強。

當然,單純計算來說,更輕型的 GPU 和 SPU 效率更高。但是因為指令比 ARM 更少,程式開發難度更大。

x86 可以說,就是一群人,雖然每次幹活都只有一部分人,但是因為有各種任務的準備,使得每次運算都有最高效率的人去做。而沒幹活的人,也是要吃飯的。

而 ARM ,就是幾個人,每次都有這些人去幹活,但是因為簡單任務確實就只需要這些人,所以他們可以提供更高的效率。

x86 是為了效能不計功耗,ARM 是在可能的功耗下,盡可能的實現更多的任務。

另外扯 CISC 和 RISC 的,現在 CISC 在 Intel 是不存在的,CPU 前端翻譯機會把傳統的x86 CISC 指令翻譯成現在的核心用的 RISC 微內碼,但是這個翻譯機保留了 CISC 的一大優點:支援變長指令。這帶來的好處是,資料長度可以不固定,降低了程式的開發難度(RISC 的所有資料都是定長度需要對齊的)。

而且可能時,可以同時處理兩條指令(這個忘了什麼地方看到的了)。

8樓:「已登出」

一般人用intel產品都會給配個風扇啊老粗的銅管啊啥的(筆記本、台式電腦、好一點的平板),何必那麼糾結於功耗、散熱,又想要車能拉貨,又想車油耗低,又想車體積小,這不是自己折騰自己呢?

9樓:銀翼

X86的功耗只受限於散熱。散熱能力之內,自然是效能越高越好。功耗是什麼東西,能吃嗎?

你沒看那些玩超頻的,130TPDCPU的動輒超頻到400多瓦的功耗,水冷、壓縮機、乾冰、液氮什麼都敢上。

ARM那些應用場景,都是功耗敏感型的,效能差不多就行。

所以說不是X86功耗控制不好,而是他不太在意功耗這種事情。

10樓:章魚哥

不說太多,我也有個六代cm平板。我覺得部分答案裡可能有些誤差,我們不能夠用4.5w的TDP來分析15w跑出來的效能

我的結論挺簡單,常見情況下,arm效能不如x86,但能效比高於x86。不代表說誰高誰低,類似的可以把arm超頻,arm高頻能效比也不如arm低頻。

效能功耗是有個曲線的,並不是絕對幾次冪的關係,如果以效能為變數,高效能下x86能效比高,低效能下arm能效比高。

以上均有前提,這是沒有完全控制變數情況下得到的結論,英特爾的製程工藝比台積電,三星,格羅方德強一些,用酷睿和arm陣營對比都是不公平的,這裡面的差異是包涵製程工藝的差距的,目前的台積電,三星的16nm到10nm所有節點,高頻效能都不好,反過來說AMD更適合和arm陣營對比,由於ryzen才用了三星的技術由GF代工,和目前arm主流處理器工藝接近,所以對比x86和arm應該用AMD。

352的x86與x86c有什麼區別?

若水三千 首先,在感測器上,X86C增加了甲醛 TVOC 溫濕度資料的識別,有更全面的數字檢測 其次增加了一層濾網,一層2mm炭,增強了除味功能 除甲醛功能 最後也是最主要的地方,增加了正負離子功能,主動消殺的功能,這樣就對室內載體表面的細菌和病毒 手機 玩具等 的殺滅效果更好!親身使用經歷 X86...

ARM架構和MIPS架構以及X86架構的區別是什麼?

x86 強行提供指令糖,盡可能使運算與定址方式 正交 mips 我就是為了流水化而設計的,讓流水線去實現正交吧。arm沒接觸過 ARM與x86 Wintel帝國 ARM與x86 ATOM的前生今世 ARM與x86 蝶變ARM ARM與x86 Eagle s coming ARM與x86之5 結束語和...

ARM平台和X86平台的晶元這樣對比是否可行?

李寧lemonC 主要是晶元指令集的差別,ARM短指令集適合手機和嵌入式等低功耗平台,X86長指令集更看重運算能力。雖然微軟系統適配了ARM平台,但是應用軟體層面相容性問題,ARM晶元實際使用效果不及X86晶元,同理超低功耗的X86晶元也不適合安卓手機。 Seden 實際上分數沒有意義的,我手裡有台...