【廣告】
因?yàn)镃PU有大量的緩存和復(fù)雜的邏輯控制單元,因此它非常擅長邏輯控制、串行的運(yùn)算。相比較而言,GPU因?yàn)橛写罅康乃阈g(shù)運(yùn)算單元,因此可以同時(shí)執(zhí)行大量的計(jì)算工作,它所擅長的是大規(guī)模的并發(fā)計(jì)算, 計(jì)算量大但是沒有什么技術(shù)含量,而且要重復(fù)很多次。這樣一說,我們利用GPU來提高程序運(yùn)算速度的方法就顯而易見了。使用CPU來做復(fù)雜的邏輯控制,用GPU來做簡單但是量大的算術(shù)運(yùn)算,就能夠大大地提高程序的運(yùn)行速度。
CPU有強(qiáng)大的算術(shù)運(yùn)算單 元,可以在很少的時(shí)鐘周期內(nèi)完成算術(shù)計(jì)算。同時(shí),有很大的緩存可以保存很多數(shù)據(jù)在里面。此外,還有復(fù)雜的邏輯控制單元,當(dāng)程序有多個(gè)分支的時(shí)候, 通過提供分支預(yù)測的能力來降低延了時(shí)。GPU是基于大的吞吐量設(shè)計(jì),有很多的算術(shù)運(yùn)算單元和很少的緩存。同時(shí)GPU支持大量的線程同時(shí)運(yùn)行,如果他們需要訪問同一個(gè)數(shù)據(jù),緩存會(huì)合并這些訪問,自然會(huì)帶來延了時(shí)的問題。盡管有延了時(shí),但是因?yàn)槠渌阈g(shù)運(yùn)算單元的數(shù)量龐大,因此能夠達(dá)到一個(gè)非常大的吞吐量的效果。
CPU控制技術(shù)的主要形式,插入控制。CPU 對于操作控制信號的產(chǎn)生,主要是通過指令的功能來實(shí)現(xiàn)的,通過將指令發(fā)給相應(yīng)部件,達(dá)到控制這些部件的目的。實(shí)現(xiàn)一條指令功能,主要是通過計(jì)算機(jī)中的部件執(zhí)行一序列的操作來完成。較多的小控制元件是構(gòu)建集中處理模式的關(guān)鍵,目的是為了更好的完成CPU數(shù)據(jù)處理操作。
除了嵌入式系統(tǒng),多數(shù)CPU都有兩種工作模式:內(nèi)核態(tài)和用戶態(tài)。這兩種工作模式是由PSW寄存器上的一個(gè)二進(jìn)制位來控制的。內(nèi)核態(tài)的CPU,可以執(zhí)行指令集中的所有指令,并使用硬件的所有功能。