【廣告】
因為CPU有大量的緩存和復(fù)雜的邏輯控制單元,因此它非常擅長邏輯控制、串行的運(yùn)算。相比較而言,GPU因為有大量的算術(shù)運(yùn)算單元,因此可以同時執(zhí)行大量的計算工作,它所擅長的是大規(guī)模的并發(fā)計算, 計算量大但是沒有什么技術(shù)含量,而且要重復(fù)很多次。這樣一說,我們利用GPU來提高程序運(yùn)算速度的方法就顯而易見了。使用CPU來做復(fù)雜的邏輯控制,用GPU來做簡單但是量大的算術(shù)運(yùn)算,就能夠大大地提高程序的運(yùn)行速度。
CPU控制技術(shù)的主要形式,時間控制。將時間定時應(yīng)用于各種操作中,就是所謂的時間控制。在執(zhí)行某一指令時,應(yīng)當(dāng)在規(guī)定的時間內(nèi)完成,CPU的指令是從高速緩沖存儲器或存儲器中取出,之后再進(jìn)行指令譯碼操作,主要是在指令寄存器中實施,在這個過程中,需要注意嚴(yán)格控制程序時間。
更優(yōu)化的CPU架構(gòu)是superscalar架構(gòu)(超標(biāo)量架構(gòu))。這種架構(gòu)將取指、解了碼、執(zhí)行單元分開,有大量的執(zhí)行單元,然后每個取指 解了碼的部分都以并行的方式運(yùn)行。比如有2個取指 解了碼的并行工作線路,每個工作線路都將解了碼后的指令放入一個緩存緩沖區(qū)等待執(zhí)行單元去取出執(zhí)行。
關(guān)于CPU的基本組成
1、CPU是用來運(yùn)算的(加法運(yùn)算 、乘法運(yùn)算*、邏輯運(yùn)算and not or等),例如c=a b。
2、運(yùn)算操作涉及到數(shù)據(jù)輸入(input)、處理、數(shù)據(jù)輸出(output),a和b是輸入數(shù)據(jù),加法運(yùn)算是處理,c是輸出數(shù)據(jù)。
3、CPU需要使用一個叫做存儲器(也就是各種寄存器)的東西保存輸入和輸出數(shù)據(jù)。
4、CPU還要將一些常用的基本運(yùn)算工具(如加法器)放進(jìn)CPU,這部分負(fù)責(zé)運(yùn)算,稱為算術(shù)邏輯單元(ALU)。
5、CPU中還有一個控制器(CU),負(fù)責(zé)將存儲器中的數(shù)據(jù)送到ALU中去做運(yùn)算,并將運(yùn)算后的結(jié)果存回到存儲器中。控制器還包含了一些控制信號。