小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

為什么 CPU 的浮點運算能力比 GPU 差,為什么不提高 CPU 的浮點運算能力?

 pgl147258 2014-09-11

馮東的回答(64票)】:

@Clones 的答案是一個常見的說法,但是沒有觸及到本質(zhì)。

首先,「速度區(qū)別主要是來自于架構(gòu)上的區(qū)別」是一個表面化的解釋。對,架構(gòu)是不同。但是這種不同是目前各個廠家選擇的現(xiàn)狀,還是由于本質(zhì)的原因決定的?CPU 能不能增加核?GPU 那張圖為什么不需要 cache?

首先,CPU 能不能像 GPU 那樣去掉 cache?不行。GPU 能去掉 cache 關(guān)鍵在于兩個因素:數(shù)據(jù)的特殊性(高度對齊,pipeline 處理,不符合局部化假設(shè),很少回寫數(shù)據(jù))、高速度的總線。對于后一個問題,CPU 受制于落后的數(shù)據(jù)總線標(biāo)準(zhǔn),理論上這是可以改觀的。對于前一個問題,從理論上就很難解決。因為 CPU 要提供通用性,就不能限制處理數(shù)據(jù)的種類。這也是 GPGPU 永遠無法取代 CPU 的原因。

其次,CPU 能不能增加很多核?不行。首先 cache 占掉了面積。其次,CPU 為了維護 cache 的一致性,要增加每個核的復(fù)雜度。還有,為了更好的利用 cache 和處理非對齊以及需要大量回寫的數(shù)據(jù),CPU 需要復(fù)雜的優(yōu)化(分支預(yù)測、out-of-order 執(zhí)行、以及部分模擬 GPU 的 vectorization 指令和長流水線)。所以一個 CPU 核的復(fù)雜度要比 GPU 高的多,進而成本就更高(并不是說蝕刻的成本高,而是復(fù)雜度降低了成片率,所以最終成本會高)。所以 CPU 不能像 GPU 那樣增加核。

至于控制能力,GPU 的現(xiàn)狀是差于 CPU,但是并不是本質(zhì)問題。而像遞歸這樣的控制,并不適合高度對齊和 pipeline 處理的數(shù)據(jù),本質(zhì)上還是數(shù)據(jù)問題。

【Clones的回答(9票)】:

速度區(qū)別主要是來自于架構(gòu)上的區(qū)別。架構(gòu)的不同則是因為硬件的設(shè)計目的不一樣。

英偉達的CUDA文檔里給了這樣一幅圖:

其中ALU就是“算術(shù)邏輯單元(Arithmetic logic unit)”。

CPU和GPU進行計算的部分都是ALU,而如圖所示,GPU絕大部分的芯片面積都是ALU,而且是超大陣列排布的ALU。這些ALU都是可以并行運行的,所以浮點計算速度就特別高了。

相比起來,CPU大多數(shù)面積都需要給控制單元和Cache,因為CPU要承擔(dān)整個計算機的控制工作,沒有GPU那么單純。

所以GPU的程序控制能力相比CPU來說不強,稍早時候的CUDA程序像是遞歸都是不能用的(較新的設(shè)備上可以了)。

我覺得也不是CPU不能提高浮點計算速度,而是因為沒什么特別的必要了。咱們通常的桌面應(yīng)用根本沒有什么特別的浮點計算能力要求。而同時GPU這樣的設(shè)備已經(jīng)出現(xiàn)了,那么需要浮點計算的場合利用上就行了

【石磊的回答(0票)】:

外行看熱鬧。

其實這是跟人類的需求相負荷的,最早出來的時候人們對多媒體并沒有這么大的需求,也就是對浮點的需求并不強烈,那自然就先解決重要的整數(shù)了,就這樣一直發(fā)展著,直到后來GPU后來才有了較大發(fā)展。

至于說為什么現(xiàn)在不提高cpu,只能說不需要不劃算,cpu是通用型的設(shè)備,它要提供多種復(fù)雜的服務(wù),而Gpu則相對來說比較單一,這樣實現(xiàn)相同功能gpu最劃算,就像常見的家用游戲機的效果比電腦好一樣,實際上我們可以看到電腦的配置并不必家用機差,這就是專用和通用體現(xiàn)出來的一些區(qū)別,當(dāng)然這些是基于現(xiàn)在的情況。

【王磊的回答(0票)】:

GPU的出現(xiàn)就是為了大量的浮點運算(圖形圖像處理),除圖形圖像外的其他任務(wù)很少用到浮點運算,所以CPU不是不能提高浮點運算能力,而是沒必要。也許未來的哪一天GPU再次和CPU整合,不再作為單獨的部件存在了。

這世界嘛,合久必分分久必合。

【伊恩別的回答(0票)】:

首先想糾正一下可能有的誤解:CPU不是"不能"擁有那么高的浮點運算能力,而是不能在固定的成本下,在滿足其它通用計算的性能的前提下,還擁有那么高的浮點運算能力。圖中標(biāo)出的都是對應(yīng)年份發(fā)布的商品的性能,而不是技術(shù)能達到極限能力。另外,CPU的最主要用途是來做通用計算,而不是浮點運算,所以浮點運算的能力只要夠用就好。

【勞鈞浩的回答(0票)】:

XBOX是最佳解決方案,請百度

原文地址:知乎

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多