![課件intellect系統(tǒng)結(jié)構(gòu)第6章_第1頁(yè)](http://file4.renrendoc.com/view/52fd6704ebb57fc68f181764d611e125/52fd6704ebb57fc68f181764d611e1251.gif)
![課件intellect系統(tǒng)結(jié)構(gòu)第6章_第2頁(yè)](http://file4.renrendoc.com/view/52fd6704ebb57fc68f181764d611e125/52fd6704ebb57fc68f181764d611e1252.gif)
![課件intellect系統(tǒng)結(jié)構(gòu)第6章_第3頁(yè)](http://file4.renrendoc.com/view/52fd6704ebb57fc68f181764d611e125/52fd6704ebb57fc68f181764d611e1253.gif)
![課件intellect系統(tǒng)結(jié)構(gòu)第6章_第4頁(yè)](http://file4.renrendoc.com/view/52fd6704ebb57fc68f181764d611e125/52fd6704ebb57fc68f181764d611e1254.gif)
![課件intellect系統(tǒng)結(jié)構(gòu)第6章_第5頁(yè)](http://file4.renrendoc.com/view/52fd6704ebb57fc68f181764d611e125/52fd6704ebb57fc68f181764d611e1255.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
6.1向量處理的基本概念6.2向量處理機(jī)的結(jié)構(gòu)6.4提高向量處理機(jī)性能的方法6.6向量處理機(jī)的性能評(píng)價(jià)6.7向量處理機(jī)的發(fā)展
第6章向量處理機(jī)
24五月2023計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)第六章向量處理機(jī)2向量數(shù)據(jù)帶有多個(gè)分量的數(shù)據(jù)例如:C=A+BA=X,X,X,X,X,X,X,X,X,X,X,XB=Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y具有向量數(shù)據(jù)表示和向量指令系統(tǒng)的處理機(jī)向量處理機(jī)是解決數(shù)值計(jì)算問(wèn)題的一種高性能計(jì)算機(jī)向量處理機(jī)屬大型或巨型機(jī),也可以用微機(jī)加一臺(tái)向量協(xié)處理器組成向量處理機(jī)一般都采用流水線結(jié)構(gòu),通常有有多條并行工作的流水線必須把要解決的問(wèn)題轉(zhuǎn)化為向量運(yùn)算,才能發(fā)揮向量處理機(jī)的效率6.1向量處理的基本概念6.1.1什么是向量處理例6.1:一個(gè)簡(jiǎn)單的C語(yǔ)言程序如下:
for(i=10;i<=1010;i++)
c[i]=a[i]+b[i];在向量處理機(jī)上,可以只用一條指令:
C(10:1010)=A(10:1010)+B(10:1010)
一條向量指令可處理N個(gè)或N對(duì)操作數(shù)在標(biāo)量處理機(jī)上用10多條指令,其中有8條指令要循環(huán)1000次。
從標(biāo)量到向量在一般標(biāo)量處理機(jī)中需要如下指令序列來(lái)實(shí)現(xiàn)(A、B、C分別是向量a、b、c在內(nèi)存中的起始地址):START: LOAD R0, ST;讀循環(huán)初值10
LOAD R1, ED;讀循環(huán)終值1010
LOAD R2, L;讀內(nèi)存地址增量4
MOVE R3, R2 MUL R3, R0;計(jì)算向量偏移量,;初始值為40LOOP: LOAD R4,A(R3);讀A向量的一個(gè)元素
LOAD R5,B(R3);讀B向量的一個(gè)元素
ADD R4,R5;加一個(gè)元素
STORE R4,C(R3);寫(xiě)C向量的一個(gè)元素
ADD R3,R2 ;改變向量偏移量
INC R0 ;循環(huán)次數(shù)增1CMP R0,R1 ;循環(huán)是否結(jié)束
BLE LOOP ;循環(huán)未結(jié)束轉(zhuǎn)LOOP, ;否則繼續(xù)
HALT;停機(jī)ST:10 ;循環(huán)初值ED:1010 ;循環(huán)終值L:4 ;內(nèi)存地址增量有三種處理方式:橫向處理方式,又稱為水平處理方式,橫向加工方式等。向量計(jì)算是按行的方式從左至右橫向地進(jìn)行??v向處理方式,又稱為垂直處理方式,縱向加工方式等。向量計(jì)算是按列的方式自上而下縱向地進(jìn)行??v橫處理方式,又稱為分組處理方式,縱橫向加工方式等。橫向處理和縱向處理相結(jié)合的方式。6.1.2向量處理方式要根據(jù)向量運(yùn)算的特點(diǎn)和向量處理機(jī)的類型選擇向量的處理方式。以一個(gè)簡(jiǎn)單的C語(yǔ)言編寫(xiě)的程序?yàn)槔?,說(shuō)明向量的三種處理方式的工作原理。for(i=1;i<=n;i++)y[i]=a[i]×(b[i]+c[i]);1.橫向處理方式也稱為水平處理方式,橫向加工方式等
逐個(gè)分量進(jìn)行處理:假設(shè)中間結(jié)果為T(mén)(I)
計(jì)算第1個(gè)分量:
T(1)
=B(1)+C(1)
Y(1)=A(1)×T(1)
計(jì)算第2個(gè)分量:
T(2)
=B(2)+C(2)
Y(2)=A(2)×T(2)
……
計(jì)算最后一個(gè)分量:
T(N)
=B(N)+C(N)
Y(N)=A(N)×T(N)
存在兩個(gè)問(wèn)題:
在計(jì)算向量的每個(gè)分量時(shí),都發(fā)生寫(xiě)讀數(shù)據(jù)相關(guān)。流水線效率低
如果采用多功能流水線,必須頻繁進(jìn)行流水線切換
橫向處理方式對(duì)向量處理機(jī)不適合
即使在標(biāo)量處理機(jī)中,也經(jīng)常通過(guò)編譯器進(jìn)行指令流調(diào)度。2.縱向處理方式也稱為垂直處理方式,縱向加工方式等
T(1)=B(1)+C(1)
T(2)=B(2)+C(2)
……
T(n)=B(n)+C(n)
Y(1)=A(1)×T(1)
Y(2)=A(2)×T(2)
……
Y(N)=A(N)×T(N)
采用向量指令只需要2條:
VADD B,C,T
VMUL A,T,Y
這種處理方式適用于向量處理機(jī)
數(shù)據(jù)相關(guān)不影響流水線連續(xù)工作。不同的運(yùn)算操作只需要切換1次。這種處理方式適用于存儲(chǔ)器-存儲(chǔ)器結(jié)構(gòu)3.縱橫處理方式用于寄存器-寄存器結(jié)構(gòu)的向量處理機(jī)中,向量寄存器的長(zhǎng)度是有限的。當(dāng)向量長(zhǎng)度N大于向量寄存器長(zhǎng)度n時(shí),需要分組處理。分組方法:N=K·n+r其中:r?yàn)橛鄶?shù),共分K+1組。組內(nèi)采用縱向處理方式,組間采用橫向處理方式。因此,也稱為分組處理方式,縱橫向加工方式等。
運(yùn)算過(guò)程為:
第1組:
T(1,n)=B(1,n)+C(1,n)
Y(1,n)=A(1,n)×T(1,n)
第2組:
T(n+1,2n)=B(n+1,2n)+C(n+1,2n)
Y(n+1,2n)=A(n+1,2n)×T(n+1,2n)
……
最后第k+1組:
T(kn+1,N)=B(kn+1,N)+C(kn+1,N)
Y(kn+1,N)=A(kn+1,N)+T(kn+1,N)
每組用兩條向量指令,每組發(fā)生相關(guān)兩次,其中組內(nèi)發(fā)生數(shù)據(jù)相關(guān)一次,組間切換時(shí)發(fā)生相關(guān)一次。主要優(yōu)點(diǎn):
減少訪問(wèn)主存儲(chǔ)器的次數(shù)
例如:中間變量T不寫(xiě)入主存儲(chǔ)器6.2向量處理機(jī)的結(jié)構(gòu)
主要采用兩種方法:存儲(chǔ)器-存儲(chǔ)器結(jié)構(gòu)
多個(gè)獨(dú)立的存儲(chǔ)器模塊并行工作
處理機(jī)結(jié)構(gòu)簡(jiǎn)單對(duì)存儲(chǔ)系統(tǒng)的訪問(wèn)速度要求很高寄存器-寄存器結(jié)構(gòu)
運(yùn)算通過(guò)向量寄存器進(jìn)行
需要大量高速寄存器對(duì)存儲(chǔ)系統(tǒng)訪問(wèn)速度的要求降低1.存儲(chǔ)器-存儲(chǔ)器結(jié)構(gòu)向量處理機(jī)中有多個(gè)高速流水線運(yùn)算部件,存儲(chǔ)器的訪問(wèn)速度是關(guān)鍵采用多個(gè)存儲(chǔ)體交叉和并行訪問(wèn)來(lái)提高存儲(chǔ)器速度例如:CRAY-1有64個(gè)存儲(chǔ)體,每個(gè)處理機(jī)訪問(wèn)4個(gè)存儲(chǔ)體
STAR-100采用32個(gè)存儲(chǔ)體交叉,每個(gè)存儲(chǔ)體并行讀出8個(gè)64位數(shù)據(jù)
我國(guó)研制的YH-1向量計(jì)算機(jī)有37個(gè)存儲(chǔ)體24五月2023計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)第六章向量處理機(jī)19主存
儲(chǔ)器流水線運(yùn)算部件C=A+BABCMMMMMMMM流水線運(yùn)算部件24五月2023計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)第六章向量處理機(jī)20A0B6C4…….m0A1B7C5…….m1A2B0C6…….m2A3B1C7…….m3A4B2C0……m4A5B3C1……m5A6B4C2……m6A7B5C3……m724五月2023計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)第六章向量處理機(jī)21S401234567S301234567S201234567S101234567M7B5B5A7A7W3W3M6B4B4A6A6W2W2M5B3B3A5A5W1W1M4B2B2A4A4W0W0M3B1B1A3A3M2B0B0A2A2W6M1A1A1B7B7W5W5M0A0A0B6B6W4W4
操作數(shù)緩沖棧和寫(xiě)結(jié)果緩沖棧主要用于解決訪問(wèn)存儲(chǔ)器沖突。雖然采用質(zhì)數(shù)個(gè)存儲(chǔ)體能消除訪問(wèn)存儲(chǔ)器的沖突,但是,數(shù)據(jù)經(jīng)過(guò)多次運(yùn)算之后,在存儲(chǔ)體中分布必然發(fā)生改變主要優(yōu)缺點(diǎn):
硬件結(jié)構(gòu)簡(jiǎn)單,造價(jià)低;速度相對(duì)較低2.寄存器-寄存器結(jié)構(gòu)把存儲(chǔ)器-存儲(chǔ)器結(jié)構(gòu)中的緩沖棧改為向量寄存器
運(yùn)算部件需要的操作數(shù)從向量寄存器中讀取,運(yùn)算的中間結(jié)果也寫(xiě)到向量寄存器中。
向量寄存器與標(biāo)量寄存器的主要差別是:
一個(gè)向量寄存器能夠保存一個(gè)向量,連續(xù)訪問(wèn)一個(gè)向量的各個(gè)分量。
需要有標(biāo)量寄存器和地址寄存器等。
采用寄存器-寄存器結(jié)構(gòu)的主要優(yōu)點(diǎn):
降低主存儲(chǔ)器的流量
例如:采用寄存器-寄存器結(jié)構(gòu)的CRAY-1與采用存儲(chǔ)器-存儲(chǔ)器結(jié)構(gòu)的STAR-100比較,運(yùn)算速度高3倍多,而主存流量低2.5倍。8個(gè)向量寄存器8×64×64主存
儲(chǔ)器8MB64個(gè)
個(gè)體12個(gè)流水線結(jié)構(gòu)的運(yùn)算部件緩沖寄存器64×64標(biāo)量寄存器8×64緩沖寄存器64×24地址寄存器8×24指令緩沖寄存器256×16CRAY-1向量處理機(jī)結(jié)構(gòu)
實(shí)際的應(yīng)用問(wèn)題中通常既有向量計(jì)算又有標(biāo)量計(jì)算,而且兩類計(jì)算有一定的比例
向量平衡點(diǎn)(vectorbalancepoint):為了使向量硬件設(shè)備和標(biāo)量硬件設(shè)備的利用率相等,一個(gè)程序中向量代碼所占的百分比。
關(guān)鍵問(wèn)題是:希望向量硬件和標(biāo)量硬件都能夠充分利用,不要空閑。6.4向量處理機(jī)的性能
6.4.1向量與標(biāo)量性能的平衡
例如:一個(gè)系統(tǒng)的向量運(yùn)算速度為90Mfolps,標(biāo)量運(yùn)算速度為10Mfolps。如果程序的90%是向量運(yùn)算,10%是標(biāo)量運(yùn)算。則向量平衡點(diǎn)為0.9。硬件利用率最高。向量處理機(jī)的向量平衡點(diǎn)必須與用戶程序的向量化程度相匹配。
IBM向量計(jì)算機(jī)的設(shè)計(jì)思想與上述方法不同,它維持較低的向量與標(biāo)量比例,定在3~5的范圍之間。這種做法能夠適應(yīng)通用應(yīng)用問(wèn)題對(duì)標(biāo)量和向量處理要求。機(jī)器型號(hào)幾種超級(jí)計(jì)算機(jī)的向量性能和標(biāo)量性能FujitsuVP400CrayISCray2SCrayX-MPCrayY-MPHitachiS820NECSX2向量性能
Mflops標(biāo)量性能
Mflops向量平衡點(diǎn)85.09.80.90151.511.20.93143.313.10.92201.617.00.92737.317.80.98424.29.50.98207.16.60.976.4.2向量鏈接技術(shù)向量指令的類型以CRAY-1向量處理機(jī)為例,有四類指令,兩種指令格式:
(1)向量與向量操作:ViVjOPVk
(2)向量與標(biāo)量操作:ViSjOPVk
(3)向量?。篤i存儲(chǔ)器
(4)向量存:存儲(chǔ)器
Vi
向量運(yùn)算中的相關(guān)和沖突向量運(yùn)算中的數(shù)據(jù)相關(guān)和功能部件沖突:
采用順序發(fā)射順序完成方式
(1)寫(xiě)讀數(shù)據(jù)相關(guān)。
(2)讀讀數(shù)據(jù)相關(guān),或向量寄存器沖突。
(3)運(yùn)算部件沖突。
V0V1+V2 V0V1+V2
V3V4×V5 V3V0×V4
(a)不相關(guān)的指令 (b)寫(xiě)讀數(shù)據(jù)相關(guān)
V0V1+V2 V0V1+V2
V3V4+V5 V3V1×V4
(c)功能部件沖突 (d)讀讀數(shù)據(jù)相關(guān)
向量鏈接技術(shù)(chaining)當(dāng)前一條指令的結(jié)果寄存器可以作為后繼指令的操作數(shù)寄存器時(shí),多條有數(shù)據(jù)相關(guān)的向量指令并行執(zhí)行,這種技術(shù)稱為兩條流水線的鏈接技術(shù)。例如:有如下3條向量指令:
1:V3A
2:V2V0+V1
3:V4V2×V3第1、2條指令沒(méi)有數(shù)據(jù)相關(guān)和功能部件沖突,可以同時(shí)開(kāi)始執(zhí)行(并行執(zhí)行)。第3條指令與第1、2條指令均存在寫(xiě)讀數(shù)據(jù)相關(guān),可以鏈接執(zhí)行。浮點(diǎn)加7123456MemV0V1V2V3V4123456123456浮點(diǎn)乘
三種執(zhí)行方式比較:(1)如果向量長(zhǎng)度為N,三條指令采用串行方法執(zhí)行的時(shí)間為:
[(1+6+1)+N-1]+[(1+6+1)+N-1]+[(1+7+1)+N-1]=3N+22拍(2)如果前兩條指令并行執(zhí)行,第三條指令串行執(zhí)行,則執(zhí)行時(shí)間為:
[(1+6+1)+N-1]+[(1+7+1)+N-1]=2N+15拍(3)如果采用鏈接技術(shù),則執(zhí)行時(shí)間為:
(1+6+1)+(1+7+1)+(N-1)=17+N-1=N+16拍
實(shí)現(xiàn)鏈接的條件:(1)沒(méi)有向量寄存器沖突和運(yùn)算部件沖突。(2)只有第一個(gè)結(jié)果送入向量寄存器的那一個(gè)周期可以鏈接。(3)先行的兩條指令產(chǎn)生運(yùn)算結(jié)果的時(shí)間必須相等。(4)兩條向量指令的向量長(zhǎng)度必須相等。6.6向量處理機(jī)的性能評(píng)價(jià)衡量向量處理機(jī)性能的主要指標(biāo)有:
向量指令處理時(shí)間Tvp、最大性能R、半性能向量長(zhǎng)度n1/2等。1.向量指令處理時(shí)間Tvp
執(zhí)行一條長(zhǎng)度為n的向量指令的時(shí)間Tvp表示為:
Tvp=Ts
+Tvf
+(n-1)Tc
其中:Ts為向量流水線的建立時(shí)間。
Tvf為向量流水線的流過(guò)時(shí)間。
Tc為流水線“瓶頸”段的執(zhí)行時(shí)間。如果每段執(zhí)行時(shí)間都等于一個(gè)時(shí)鐘周期,則有:
Tvp=[s+e+(n-1)]
其中:s為向量流水線建立所需的時(shí)鐘周期數(shù)。
e為向量流水線流過(guò)所需的時(shí)鐘周期數(shù)。
n為向量長(zhǎng)度。為時(shí)鐘周期長(zhǎng)度。通常把幾條能在一個(gè)時(shí)鐘周期內(nèi)同時(shí)開(kāi)始執(zhí)行的向量指令稱為一個(gè)編隊(duì)(Chime)。同一個(gè)編隊(duì)中的指令不存在功能部件沖突和數(shù)據(jù)相關(guān)。例6.3:假設(shè)一臺(tái)向量處理機(jī)中功能部件的啟動(dòng)開(kāi)銷為:取數(shù)和存數(shù)部件12個(gè)時(shí)鐘周期、乘法部件7個(gè)時(shí)鐘周期、加法部件6個(gè)時(shí)鐘周期。先把下列向量操作分成編隊(duì),然后計(jì)算每個(gè)編隊(duì)的開(kāi)始時(shí)間、獲得第一個(gè)結(jié)果元素的時(shí)間和獲得最后一個(gè)結(jié)果元素的時(shí)間。
LVV1,Rx;取向量xMULTSVV2,F(xiàn)0,V1;向量和標(biāo)量相乘
LVV3,Ry;取向量Y ADDVV4,V2,V3;加法
SVRy,V4;存結(jié)果解:第一條指令LV為第1個(gè)編隊(duì)。
MULTSV指令和第2條LV指令為第2個(gè)編隊(duì)。
ADDV指令為第3個(gè)編隊(duì)。
SV指令為第4個(gè)編隊(duì)。 如果向量長(zhǎng)度為n,則每個(gè)編隊(duì)的開(kāi)始時(shí)間、獲得第一個(gè)結(jié)果元素和最后一個(gè)結(jié)果元素時(shí)間如下表所示:編隊(duì)
開(kāi)始時(shí)間
第一個(gè)結(jié)果時(shí)間
最后一個(gè)結(jié)果時(shí)間
1.
LV
0
1211
+
n
2.
MULTSVLV
12
+
n
12
+
n
+
12
23
+
2n
3.
ADDV
24
+
2n
24
+
2n
+
6
29
+
3n
4.
SV
30
+
3n
30
+
3n
+
12
41
+
4n
如果有3個(gè)訪問(wèn)存儲(chǔ)器部件,并且不考慮控制的復(fù)雜性,采用向量鏈接技術(shù),只需要:
12+7+6+12+n–1=36+n個(gè)周期。如果考慮向量長(zhǎng)度大于向量寄存器長(zhǎng)度時(shí),則需要分段開(kāi)采。 向量長(zhǎng)度為n的一組向量操作的整個(gè)執(zhí)行時(shí)間為: 其中:T
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年五年級(jí)語(yǔ)文上冊(cè)教學(xué)總結(jié)樣本(二篇)
- 2025年個(gè)人商鋪?zhàn)夥亢贤瑯?biāo)準(zhǔn)版本(三篇)
- 醫(yī)藥行業(yè)物流運(yùn)輸合同范文
- 加油站裝修項(xiàng)目居間協(xié)議
- 城市道路監(jiān)理居間合同
- 乳制品低溫運(yùn)輸托運(yùn)協(xié)議
- 醫(yī)療器械無(wú)菌運(yùn)輸管理合同
- 海鮮冷鏈物流代理合同
- 酒泉灰色燒結(jié)磚施工方案
- 市政項(xiàng)目渣土清理運(yùn)輸協(xié)議
- 呆死帳的發(fā)生與預(yù)防課件
- 10000中國(guó)普通人名大全
- 導(dǎo)數(shù)常見(jiàn)函數(shù)圖像
- 起重機(jī)械安裝吊裝危險(xiǎn)源辨識(shí)、風(fēng)險(xiǎn)評(píng)價(jià)表
- 華北理工兒童口腔醫(yī)學(xué)教案06兒童咬合誘導(dǎo)
- 中國(guó)建筑項(xiàng)目管理表格
- 高一3班第一次月考總結(jié)班會(huì)課件
- 公共政策分析導(dǎo)論教學(xué)課件匯總完整版電子教案
- 我國(guó)油菜生產(chǎn)機(jī)械化技術(shù)(-119)
- 大跨度斜拉橋上部結(jié)構(gòu)施工技術(shù)(圖文并茂)
- 論人口模型論文計(jì)劃生育政策調(diào)整對(duì)人口數(shù)量結(jié)構(gòu)及其影響
評(píng)論
0/150
提交評(píng)論