在當今的應用程序中,GPU變得越來越重要。
我們所有人對GPU都有一點了解,因為手機和計算機中都有GPU。
為了增進大家對GPU的了解,本文將討論GPU和CPU,以了解誰具有更大的優勢。
此外,編輯器還將介紹GPU加速的原理。
如果您對GPU感興趣,則不妨繼續閱讀。
1. GPU和CPU更強或更弱? GPU無法替換CPU,類似地,CPU也無法替換GPU。
如果從視覺上理解它,GPU就像一群螞蟻,這些螞蟻在做相同的事情,而CPU就像猴子,這只猴子在做各種不同的事情。
從根本上說,CPU和GPU具有不同的用途,不同的關注點并且還具有不同的性能特征。
在某些任務中,CPU的執行速度更快;在其他任務中,GPU的性能可能更好。
當您需要對大量數據執行相同的操作時,GPU更適合;當您需要對相同數據進行大量操作時,CPU恰到好處。
但是,在實際應用中,后一種情況更多,即CPU更靈活,能夠執行更多任務。
GPU可以做什么? GPU可以幫助圖形和大規模矩陣操作,例如機器學習算法,挖掘和暴力破解密碼。
簡而言之,CPU擅長諸如分支預測之類的復雜操作,而GPU擅長于對大量數據執行簡單的操作。
一種是復雜的工作,另一種是很多并行的工作。
實際上,GPU可以看作是專用CPU,專為單指令處理大型數據而設計,這些數據都執行相同的操作。
知道處理一個大數據塊比一個接一個地處理更有效,并且執行指令的開銷將大大減少,因為處理大數據塊意味著需要更多的晶體管并行工作。
現在,旗艦圖形卡已超過數百億。
晶體管。
對于CPU,其目的是盡快對單個數據執行一條指令。
由于只需要使用一條數據指令,因此所需的晶體管數量要少得多。
目前,主流臺式機CPU晶體管的數量都在10億以下,與頂級GPU相比,相差十倍以上,但它需要更大的指令集,更復雜的ALU(算術邏輯單元),更好的分支預測和更好的虛擬化體系結構。
,更低的延遲等。
此外,就像為x86處理器編寫的操作系統Windows一樣,它需要執行的任務在CPU上肯定更加高效。
您認為每個線程的任務都不相同,并且基本上很難并行化。
無法充分利用GPU的優勢。
因此,可以預見的是,將來隨著CPU進一步增強處理數據塊的能力,我們將看到CPU與GPU架構之間的集成,并且隨著制造技術的進步和芯片的縮小,GPU可以也接受更復雜的指導。
二,GPU加速原理GPU啟動后,其包含的處理單元比CPU多,而更大的帶寬使其能夠在多媒體處理過程中發揮更大的效率。
例如:當前的頂級CPU只有4核或6核,并且模擬了8或12個處理線程來執行計算,但是普通GPU包含成百上千個處理單元,而高端GPU甚至更多。
對于多媒體計算中的大量重復過程,它具有自然的優勢。
下圖顯示了CPU和GPU架構的比較。
在硬件設計方面,CPU由幾個針對順序串行處理進行了優化的內核組成。
另一方面,GPU由數千個更小,更高效的內核組成,這些內核旨在同時處理多個任務。
通過上圖,我們可以輕松理解串行操作和并行操作之間的區別。
傳統的串行編程軟件具有以下特征:它必須在具有單個中央處理器(CPU)的單臺計算機上運行;一個問題被分解為一系列離散的指令;指令必須一個接一個地執行;任何時候都只能執行一條指令。
并行計算已經改善了許多重要的細節:它需要使用多個處理器來運行;一個問題可以分解成可以同時解決的離散指令;每個部分又細分為一系列說明;問題的每個部分都可以在處理器上同時執行。
為了舉例說明生活,您想從