X86和ARM架構的處理器能效差異為什麼會這麼大?

時間 2021-05-06 07:18:13

1樓:乙隻惠痴

X86的CPU計算開根號,SIN值,三元運算AxB+C,比較大小排序一氣呵成,一次性就能算完,

ARM的RISC處理器一般沒有這個功能

簡單講8個會計算賬加減乘除肯定比4個數學系教授快,但是真的到了傅利葉變換,積分,玩個矩陣,8個會計可能就可以歇著了

當然別拿超算比,超算有異構,就像80個銀行會計加40個數學教授 +幾百個小學生(gpu),簡單複雜都能通吃

2樓:「已登出」

處理器體系結構,指令集有很大關係。

x86的指令可變長度,而且判斷一條指令即可要從第乙個位元組逐個識別到指令末尾。才能識別處一條指令。指令內部結構也非常複雜。這對指令解碼模組來說是非常大的負擔。

而arm指令長度固定,內部格式也簡單。實現的指令解碼硬體規模很小。

x86不管是指令數量還是指令功能種類都非常大,這也對指令解碼以及後續指令執行來說,需要硬體結構和規模很大。而ARM指令數量以及指令功能種類也少,實現它的硬體負擔小。

x86有著複雜的定址方式,arm的定址方式很少。

總之,x86體系結構和指令集非常複雜,處理器晶元裡實現相關的硬體電路自然也複雜而且數量多。ARM剛好相反。

它們之間當然有明顯的差別了。

3樓:stevefan1999

編譯器呀,ARM/RISC架構的CPU都是很依賴編譯器優化才可以出色的,相反X86的CPU低層優化已經是最出類拔萃的了(一部分損耗是為了向後相容被逼出來的,如果不是的話,像IA64,效能會更好,但也十分接近RISC了),加上有四十年科技/客戶支援,論編譯器論生產力X86還是槓槓的,ARM甚至一直以來都是被當成嵌入式,微控制器電腦平台首選專用,自然優化方向不如X86。。(8088,8086在一旁痛哭)近這20年左右ARM才得到重視吧,尤其是第一代Android機、iPhone面世後。

這就是乙個X86可以模擬幾個ARM,但幾個ARM不能模擬乙個X86的原因:面向的產品方向、環境不同,自然不可相題並論。

4樓:盧Alpha

因為ARM是為了低功耗設計的,而X86是為了高效能。

你想把ARM做到X86一樣的效能,勢必增加核心複雜度,增加指令集,到時候你猜ARM對X86還能有多少功耗優勢?以上。

5樓:ka ka

ARM: 優點是省電。效率應該不算高,當然比X86這類intel都看不上的架構是好很多

X86: 優點是軟體相容性。

由於IBM的關係,當年INTEL選擇和windows合作是自然的。

當年,個人PC戰勝小型機這類的秘訣在於省錢,而不是算的更快。

得軟體者得天下。

2023年來說, IOS平台的軟體數量,已經完全超越X86了:

1 遊戲數量,itunes遊戲庫和steam遊戲庫,你們自己算算差距。。。

IOS限免遊戲我大概不下4萬個;

STEAM的免費+付費我才500+; 也就是說軟體生態的數量差距有100倍以上。。。

2 硬體能力。

同樣是GPU,老黃和AMD顯示卡支援4K hevc的規格時間進度遠小於arm陣營,老黃更是旗艦卡都不支援,只有GTX**60系列才支援。

intel也比arm陣營慢很多,原因在於windows。。

6樓:

ARM架構,過去稱作高階精簡指令集機器(Advanced RISC Machine,更早稱作:Acorn RISC Machine),是乙個32位精簡指令集(RISC)處理器架構,其廣泛地使用在許多嵌入式系統設計。由於節能的特點,ARM處理器非常適用於移動通訊領域,符合其主要設計目標為低耗電的特性。

x86是乙個intel通用計算機系列的標準編號縮寫,也標識一套通用的計算機指令集合。

典型的對比ARM架構和X86架構的產品:雲終端和瘦客戶機,目前很多基於ARM A9八核處理器的雲終端(騰創TC-T2500N),而X86架構瘦客戶機的CPU型別更豐富,1037u,J1800,J1900,i3,i5。而瘦客戶機有主動風扇和被動靜音,有款瘦客戶機TC-T7600Intel BAY TRAIL-T 四核 Z3735F 1.

33GHZ-1.83GH的設計和雲終端差不多!

7樓:

ARM採用了RISC,x86採用了CISC指令集,二者的差異表現在了能耗和速度上。RISC的能耗較低,但執行速度慢;x86的速度高能耗大。

RISC和CISC的區別在於指令實現的複雜度,根據統計,在CISC中80%的指令可以通過20%的指令實現,而CISC中大多數的暫存器有自己獨特的作用,那麼為什麼需要那80%的指令?主要是出於執行速度上的考慮,根據統計分析,大多數操作需要反覆執行,比如複製操作,在記憶體中複製長度為n的區域,當然你可以乙個乙個複製,使用n個迴圈,但這樣做問題是,我每次執行乙個都需要取指令,解碼,執行。大部分的時間都浪費在了取指令、解碼上了,計算機科學家提出了乙個方法,用一條指令去完成它,MOVSB就是把DS:

SI為首位址的ECX個字拷貝到ES:DI個,那麼在執行複製的時候,只需取指令和寫5個專用暫存器即可,好處是縮短了執行時間,壞處是提高了設計的複雜度。為了實現複雜的指令,高階的Intel CPU採用了硬聯邏輯的方法,使用了複雜的數字邏輯電路完成了指令的設計,好處是速度快,壞處是成本高,低端的Intel CPU採用了微指令的方法,就是把MOVSB的指令固化在CPU的RAM中,好處是便宜,壞處是速度比硬聯邏輯慢,只不過是為了提公升相容性把取指令和解碼從記憶體轉到了CPU內部,上個月測試了一次,在賽揚上執行MOVSB居然和迴圈複製一樣慢。

RISC的設計者則進行了簡化,我只保留那20%的指令即可,我要用20%的指令實現那80%的指令。我的CPU努力將這20%的指令性能做到極致,為了提公升速度的不足,我多放暫存器。早期的編譯器不支援暫存器分配,早期的ARM上的JVM和c語言編譯器不支援暫存器分配,因此那時的ARM執行的慢,為了提公升速度只好用組合語言,近十年來暫存器分配演算法才被廣泛使用,ARM的應用範圍才會提公升。

從電路的角度來說,電晶體一旦啟動都是有功耗的,為了保證在指令執行時迅速響應不可能先把電晶體關了,用時在開啟,對於複雜指令的支援需要大量的電晶體,他們在高電平耗電大低電平耗電小,整體來說CISC的耗電大。

以上是它們的本質設計差異,但在近些年一些設計、優化方法同時在兩者上使用,如更小的製程(可以做到nm級別,以降低功耗),指令流水,多級快取等等,使二者的功耗都發生了降低,速度得到提高。

8樓:Gary Zhang

其實目前x86和arm的能耗比已經差不多了,關鍵還是生態。現在大家都用arm指令集,自然軟體,作業系統都對arm有各種優化,現在突然來個x86,小的應用廠商已經建立起arm的開發體系和人才隊伍了,要真讓他們在支援x86,那真是太難為他們了。大廠,比如蘋果三星,都自己做處理器,也是arm指令集的,更加沒有必要用x86了。

應該說x86在移動端已經很難擠進去了

9樓:毛慧子

正好前不久做過測試。4096*4096的矩陣向量乘法,用同乙個BLAS庫,ARMv6 700MHz的要比筆記本的i5 1.6GHz 慢20倍左右。

具體數字可能有偏差,但ARM和Core的能效比基本接近

10樓:二鍋

看到一篇很好的文章,分享給對這個問題感興趣的人:

ARM vs X86 - Key differences explained!

11樓:知否知否

1. 硬體上,發熱除了處理器,還要看電源管理晶元,這兩款是主要的源頭,電源管理晶元和處理器,是配套的。如果i5的源頭設計是PC的話,那麼無論是處理器,還是電源管理晶元,都會缺乏低功耗的處理。

這個是晶元設計的時候決定的。

2. 對於軟體上,windows phone已經做了類似android的優化,問題不大

12樓:

同比,x86的效能是ARM的 2-9 倍,你說效能差不多嗎。現在宣稱幾核幾核的手機你敢讓他跑個計算機級別的程式來試試看不。

所以同樣一款程式,手機上的就很需要關注效能,而在x86上就基本不需要去考慮。

13樓:楊博

x86的效能功耗比其實不遜於ARM。參見 綜合來看,未來是屬於以 ARM 為代表的精簡指令集,還是以 x86 為代表的複雜指令集?、http://

mobile.zol.com.cn/353/3

538772.html

14樓:王順

1、精簡指令集就意味著更小的晶元,更少的電晶體工作。CISC相比於RISC有更多實現單一功能的電晶體結構(言外之意它們被使用的頻率並不高),而這部分電晶體在不工作的時候會提供不小的靜態功耗。

2、ARM在無指令處理的時候可以休眠,而X86在無指令處理時只是降低工作頻率而已

3、ARM一般都有協處理器共同工作,比如GPU在頻率差不多的時候,主要是上述三個原因導致了功耗上的差異。

15樓:tjunangang

硬體層面,這兩種處理器的設計初衷可說是背道而馳的,目前看來,x86架構在移動計算站穩腳跟很困難,而ARM之類的RISC架構也無法在較複雜的應用中表現很出色,例如高效能計算等領域。

至於發熱量和功耗,確實一則因為x86處理器要包含很多指令集,這用去了不少電晶體,二則因為內部邏輯比較複雜,也用去了不少電晶體。所以它從架構上講,做到低功耗其實很困難,intel號稱可以講功耗做到數百毫瓦,但那是在CPU閒置進入C5或者C6 state的時候的功耗,相當於某些低頻ARM處理器正常工作的功耗。

其實你可以觀察一下,宣稱效能差不多的x86處理器和ARM處理器,尺寸可是差不少的,製程上基本沒啥大區別,甚至x86一般還會比ARM更先進一點。

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

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

時至今日,x86架構處理器有沒有因為歷史包袱而不得已犧牲效能?

趙者也 當然有最典型的就是cisc架構,現在計算機的任務三天一小變五天一大變,用一套固定的指令集根本搞不定。cisc和risc之爭在通用計算領域cisc早就輸了。所以intel用內部risc微指令集來實現x86,也就是用risc來實現cisc。雖然intel優化已經很nb,但是在這麼底層上還要去做抽...

ARM 架構 是一種怎樣的處理器架構?

大狸 打個比方吧,ARM一開始是一家蓋房子的公司,後面這家公司蓋房子業績平平,於是就轉變策略不蓋房子了,轉而開始賣蓋房子所需要的設計圖紙方案,同時還和買方案蓋房子的客戶一起蓋房子。在這裡,房子就是所謂的晶元,圖紙方案就是指晶元的演算法,架構等等的智財權。ARM向他的客戶提供授權,軟體包等,通過授權費...