版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
流水線技術(shù)向量處理機(jī)第一頁,共四十三頁,編輯于2023年,星期日(1)水平(橫向)處理方式
Ki=bi+ci
Di=Ki×ai
相關(guān):N次
功能切換:2N次虛擬存儲器的特點(diǎn)第二頁,共四十三頁,編輯于2023年,星期日(2)垂直(縱向)處理方式
K=B+C
D=K×A相關(guān):1次功能切換:1次對處理機(jī)結(jié)構(gòu)的要求:存儲器-存儲器型操作的運(yùn)算流水線對存儲器的帶寬要求很高。例如:STAR-100,CYBER-2053.5向量處理機(jī)虛擬存儲器的特點(diǎn)第三頁,共四十三頁,編輯于2023年,星期日3.5向量處理機(jī)虛擬存儲器的特點(diǎn)第四頁,共四十三頁,編輯于2023年,星期日(3)分組(縱橫)處理方式
把向量分成長度為某個固定值的若干組,
組內(nèi)按縱向方式處理,依次處理各組。每組內(nèi):
相關(guān):1次
功能切換:2次
3.5向量處理機(jī)虛擬存儲器的特點(diǎn)第五頁,共四十三頁,編輯于2023年,星期日3.5向量處理機(jī)虛擬存儲器的特點(diǎn)第六頁,共四十三頁,編輯于2023年,星期日對處理機(jī)結(jié)構(gòu)的要求:
寄存器-寄存器型操作的運(yùn)算流水線。舉例虛擬存儲器的特點(diǎn)第七頁,共四十三頁,編輯于2023年,星期日2.向量處理機(jī)的速度評價方法◆標(biāo)量處理機(jī):通常用每秒執(zhí)行多少指令
MIPS(MillionInstructionsPerSecond)
來衡量機(jī)器的運(yùn)算速度?!粝蛄刻幚頇C(jī):常用每秒取得多少個浮點(diǎn)運(yùn)算
結(jié)果表示機(jī)器速度,以MFLOPS(Millionof
FloatingPointPerSecond)作為測量單位。另一種評定計(jì)算機(jī)速度的方法:比較法。
(選擇一臺速度指標(biāo)得到公認(rèn)的機(jī)器作為標(biāo)準(zhǔn)機(jī),給定一些典型的基準(zhǔn)程序。)3.5向量處理機(jī)虛擬存儲器的特點(diǎn)第八頁,共四十三頁,編輯于2023年,星期日3.5.2提高向量處理機(jī)性能的主要技術(shù)1.CRAY-I簡介
◆
美國CRAY公司
◆
1976年
◆
每秒億次浮點(diǎn)運(yùn)算
◆
主頻:80MHz
字長:64位2.CRAY-1的基本結(jié)構(gòu)
◆
向量運(yùn)算部件:6個
整數(shù)加,邏輯運(yùn)算,移位
浮點(diǎn)加,浮點(diǎn)乘,求倒數(shù)3.5向量處理機(jī)虛擬存儲器的特點(diǎn)第九頁,共四十三頁,編輯于2023年,星期日◆
向量寄存器組:8×64V0~V7◆
每個Vi
每個向量運(yùn)算部件◆
向量長度寄存器VL◆
向量屏蔽寄存器VM
CRAY-1向量處理的顯著特點(diǎn):只要不出現(xiàn)Vi
沖突和向量功能部件沖突,各個Vi之間和各個向
量功能部件之間都能并行工作,大大加快了向量
指令的處理。3.5向量處理機(jī)虛擬存儲器的特點(diǎn)第十頁,共四十三頁,編輯于2023年,星期日3.CRAY-1向量指令類型
◆
Vk←ViopVj
◆
Vk←SiopVj
◆
Vk←主存
◆
主存←ViVi沖突:指的是并行工作的各向量指令的源向
量或結(jié)果向量的Vi有相同的。向量功能部件沖突:指同一個向量功能部件被
一條以上的并行工作向
量指令所使用。3.5向量處理機(jī)虛擬存儲器的特點(diǎn)第十一頁,共四十三頁,編輯于2023年,星期日3.5向量處理機(jī)虛擬存儲器的特點(diǎn)第十二頁,共四十三頁,編輯于2023年,星期日4.鏈接技術(shù)
當(dāng)兩條指令出現(xiàn)“寫后讀”相關(guān)時,若它們
不存在功能部件沖突和向量寄存器(源或目的)
沖突,就有可能把它們所用的功能部件頭尾相
接,形成一個鏈接流水線,進(jìn)行流水處理。
鏈接特性實(shí)質(zhì)上是把流水線“定向”的思想
引入到向量執(zhí)行過程的結(jié)果。3.5向量處理機(jī)虛擬存儲器的特點(diǎn)第十三頁,共四十三頁,編輯于2023年,星期日虛擬存儲器的特點(diǎn)第十四頁,共四十三頁,編輯于2023年,星期日例3.7
對上述向量運(yùn)算D=A*(B+C),若向量
長度N≤64,向量元素為浮點(diǎn)數(shù),則在B、C取到
V0、V1后,就可用以下三條向量指令求解:(1)V3←存儲器(訪存,載入A)
(2)V2←V0+V1(浮點(diǎn)加)
(3)V4←V2*V3(浮點(diǎn)乘,存D)解:鏈接過程如圖3.44所示:3.5向量處理機(jī)虛擬存儲器的特點(diǎn)第十五頁,共四十三頁,編輯于2023年,星期日◆三條向量指令全部用串行方法執(zhí)行,則總
的執(zhí)行時間為:[(1+6+1)+N-1]+[(1+6+1)+N-1]
+[(1+7+1)+N-1]=3N+22拍3.5向量處理機(jī)虛擬存儲器的特點(diǎn)第十六頁,共四十三頁,編輯于2023年,星期日◆前兩條向量指令并行執(zhí)行之后,再執(zhí)行第
三條向量指令,則總的執(zhí)行時間為:
[(1+6+1)+N-1]+[(1+7+1)+N-1]
=2N+15拍◆采用向量鏈接技術(shù),所需拍數(shù)(亦稱為鏈接
流水線的流水時間)為:
[(1+6+1)]+[(1+7+1)]=17拍
則三條向量指令總執(zhí)行時間為:
[(1+6+1)]+[(1+7+1)]+(N-1)=N+16拍3.5向量處理機(jī)虛擬存儲器的特點(diǎn)第十七頁,共四十三頁,編輯于2023年,星期日5.向量鏈接的一些主要要求:
(除了要保證無向量寄存器使用沖突和無向
量功能部件使用沖突的條件之外)◆在進(jìn)行鏈接的時候,只有在前一條向量指令
的第一個結(jié)果元素送入結(jié)果向量寄存器的那
一個時鐘周期才可以進(jìn)行鏈接,若錯過該時
刻就不能進(jìn)行鏈接?!糁挥挟?dāng)前一條向量指令全部執(zhí)行完畢,釋放
相應(yīng)的向量寄存器資源后才能執(zhí)行后面的向
量指令。3.5向量處理機(jī)虛擬存儲器的特點(diǎn)第十八頁,共四十三頁,編輯于2023年,星期日◆當(dāng)一條向量指令的兩個源操作數(shù)分別是兩條
先行向量指令的結(jié)果寄存器時,要求先行的
兩條向量指令產(chǎn)生運(yùn)算結(jié)果的時間必須相等,
即要求有關(guān)向量功能部件的延遲時間相等?!糁挥兴锌梢枣溄訄?zhí)行的向量指令的向量長
度相等時,它們之間才能鏈接執(zhí)行,否則它
們之間也不能鏈接執(zhí)行。3.5向量處理機(jī)第十九頁,共四十三頁,編輯于2023年,星期日6.向量循環(huán)或分段開采技術(shù)
如果向量的長度大于向量寄存器的長度,該如何處理呢?◆向量循環(huán):長向量循環(huán)分段處理的程序結(jié)構(gòu)。把長向量分成固定長度的段,然后循環(huán)分 段處理,一次循環(huán)只處理一個向量段?!暨@種分段向量處理技術(shù)也稱為分段開采?!魧㈤L向量循環(huán)分段處理是由系統(tǒng)硬件和軟件控 制完成的,對程序員透明。3.5向量處理機(jī)虛擬存儲器的特點(diǎn)第二十頁,共四十三頁,編輯于2023年,星期日
例3.8
設(shè)A和B是長度為N的向量,考慮在Cray-1向量處理器上實(shí)現(xiàn)如下的循環(huán)操作。
DO10I=1,N10A(I)=5.0*B(I)+1.0
◆當(dāng)N≤64時,可以用如下指令序列實(shí)現(xiàn)上 述循環(huán)操作:S1←5.0
;將常數(shù)5.0送入標(biāo)量寄存器S1S2←1.0
;將常數(shù)1.0送入標(biāo)量寄存器S2VL←N
;在向量長度寄存器VL中設(shè)置向量長度N3.5向量處理機(jī)虛擬存儲器的特點(diǎn)第二十一頁,共四十三頁,編輯于2023年,星期日V0←B
;從存儲器中將向量B讀入向量寄存器V0V1←S1*V0
;向量B中的每個元素分別和常數(shù)S1
相乘V2←S2+V1
;向量V1中的每個元素分別和常數(shù)
S2相加A←V2
;將計(jì)算結(jié)果從向量寄存器V2存入存 儲器的向量A3.5向量處理機(jī)虛擬存儲器的特點(diǎn)第二十二頁,共四十三頁,編輯于2023年,星期日
◆當(dāng)N
>64時,就需要進(jìn)行分段開采。在進(jìn)行分段開采時,首先必須根據(jù)向量長度計(jì)算出循環(huán)次數(shù)K
:一般來說,N并不一定總是64的倍數(shù),所以如果N/64有余數(shù),那么余數(shù)L為:3.5向量處理機(jī)64K=NL=N
-64×64N虛擬存儲器的特點(diǎn)第二十三頁,共四十三頁,編輯于2023年,星期日S1←5.0
;將常數(shù)5.0送入標(biāo)量寄存器S1S2←1.0
;將常數(shù)1.0送入標(biāo)量寄存器S2VL←L
;在向量長度寄存器VL中設(shè)置向量長度LV0←B
;從存儲器中將向量B[0..L-1]讀入向量 寄存器V0V1←S1*V0
;向量B中的每個元素分別和常數(shù)S1相乘;V2←S2+V1
;向量V1中的每個元素分別和常數(shù)S2相加A←V2
;將計(jì)算結(jié)果從向量寄存器V2存入存儲器的向量A[0..L-1]處理余數(shù)部分,計(jì)算L個元素虛擬存儲器的特點(diǎn)第二十四頁,共四十三頁,編輯于2023年,星期日For(I=0toK-1){V0←B
;從存儲器中將向量B[L+I*64…L+I*64+63]
讀入向量寄存器V0V1←S1*V0
;向量B中的每個元素分別和常數(shù)S1相乘;V2←S2+V1
;向量V1中的每個元素分別和常數(shù)S2相加A←V2
;將計(jì)算結(jié)果V2存入存儲器的向量
A[L+I*64…L+I*64+63]}循環(huán)K次,分段處理
第二十五頁,共四十三頁,編輯于2023年,星期日衡量向量處理機(jī)性能的主要參數(shù):1.向量指令的處理時間
◆執(zhí)行一條向量長度為n的向量指令所需的時間為:3.5.3向量處理機(jī)的性能評價
Tvp
=Ts
+Tvf
+(n-1)Tc
Ts:向量處理單元流水線的建立時間,包括:向量起始地址的設(shè)置、計(jì)數(shù)器加1、條件轉(zhuǎn)移指令執(zhí)行等。3.5向量處理機(jī)第二十六頁,共四十三頁,編輯于2023年,星期日
Tvf
:向量處理單元流水線的流過時間,它是從向量指令開始執(zhí)行到得到第一個計(jì)算結(jié)果(向量元素)所需的時間。
Tc
:向量處理單元流水線“瓶頸”段的執(zhí)行時間。◆如果向量處理單元流水線不存在“瓶頸”段,每 段的執(zhí)行時間等于一個時鐘周期,則上式也可 以寫為:Tvp
=[s
+e
+(n-1)]Tclk3.5向量處理機(jī)第二十七頁,共四十三頁,編輯于2023年,星期日
s:向量處理單元流水線建立所需的時鐘周期數(shù);
e:向量流水線流過所需的時鐘周期數(shù);
Tclk:時鐘周期時間?!艨梢栽俑膶憺椋篢vp
=(Tstart
+n)Tclk
Tstart:向量功能部件啟動所需的時鐘周期數(shù);
n:向量元素個數(shù)。3.5向量處理機(jī)第二十八頁,共四十三頁,編輯于2023年,星期日◆對于一組向量指令,其執(zhí)行時間主要取決于 三個因素:向量的長度向量操作之間是否鏈接向量功能部件的沖突和數(shù)據(jù)的相關(guān)性◆把幾條能在同一個時鐘周期內(nèi)一起開始執(zhí)行的 向量指令集合稱為一個編隊(duì)。
3.5向量處理機(jī)第二十九頁,共四十三頁,編輯于2023年,星期日例3.9
假設(shè)每種向量功能部件只有一個,那么下面的一組向量指令能分成幾個編隊(duì)?LVV1,RxMULTSVV2,R0,V1LVV3,RyADDVV4,V2,V3SVRy,V43.5向量處理機(jī)第三十頁,共四十三頁,編輯于2023年,星期日解:第一編隊(duì):LV
第二編隊(duì):MULTSV;LV
第三編隊(duì):ADDV
第四編隊(duì):SV一個編隊(duì)內(nèi)所有向量指令執(zhí)行完畢所需要的時間為:clkistartclkijstartjicTnTTnTT)(][max+=+=3.5向量處理機(jī)第三十一頁,共四十三頁,編輯于2023年,星期日假設(shè)第i個編隊(duì)中所有向量指令處理的向量元素個數(shù)均為n。
:第i個編隊(duì)的執(zhí)行時間;
:第i個編隊(duì)中第條指令所使用向量功能部件的啟動時鐘周期數(shù)。icTijstartT經(jīng)過編隊(duì)后的向量指令序列總的執(zhí)行時間為:
clkstartclkmiistartmiclkistartmiicvTmnTTmnTTnTTT)()()(111+=+=+==∑∑∑===3.5向量處理機(jī)第三十二頁,共四十三頁,編輯于2023年,星期日編隊(duì)并采用分段開采技術(shù)后,向量指令序列執(zhí)行所需的總的時鐘周期數(shù)為:MVL:向量處理機(jī)的向量寄存器長度。
mnTTMVLnMVLMVLnnmTTMVLmTTMVLnTstartloopstartloopstartloopn++×=×-×+++×++=)()]([)(×3.5向量處理機(jī)第三十三頁,共四十三頁,編輯于2023年,星期日例3.10
在某向量處理機(jī)上執(zhí)行DAXPY的向量指令序列,也即計(jì)算雙精度浮點(diǎn)向量表達(dá)式。其中和是雙精度浮點(diǎn)向量,最初保存在外部存儲器中,是一個雙精度浮點(diǎn)常數(shù),已存放在浮點(diǎn)寄存器F0中。計(jì)算該表達(dá)式的向量指令序列如下:LVV1,RxMULTFVV2,F(xiàn)0,V1LVV3,RyADDVV4,V2,V3SVRy,V43.5向量處理機(jī)第三十四頁,共四十三頁,編輯于2023年,星期日解:第一編隊(duì):LVV1,Rx
第二編隊(duì):MULTFVV2,F(xiàn)0,V1;LVV3,Ry
第三編隊(duì):ADDVV4,V2,V3
第四編隊(duì):SVRy,V4假設(shè)向量存儲部件的啟動需要12個時鐘周期,向量乘法部件的啟動需要7個時鐘周期,向量加法部件的啟動需要6個時鐘周期,向量寄存器長度MVL=64,那么對n個向量元素進(jìn)行DAXPY表達(dá)式計(jì)算所需的時鐘周期數(shù)為:3.5向量處理機(jī)第三十五頁,共四十三頁,編輯于2023年,星期日如果考慮采用向量鏈接技術(shù),那么DAXPY的向
量指令序列可以編隊(duì)為:第一編隊(duì):LVV1,Rx;MULTFVV2,F0,V1
第二編隊(duì):LVV3,Ry;ADDVV4,V2,V3
第三編隊(duì):SVRy,V4nnnnmnTTMVLnTstartloopn457644)126121215(64)(+×=+++++×=++×=3.5向量處理機(jī)第三十六頁,共四十三頁,編輯于2023年,星期日第一編隊(duì)啟動需要12+7=19個時鐘周期;第二編隊(duì)啟動需要12+6=18個時鐘周期;第三編隊(duì)啟動仍然需要12個時鐘周期。
采用鏈接技術(shù)后,對n個向量元素進(jìn)行DAXPY表達(dá)式計(jì)算所需的時鐘周期數(shù)為:
nnnnmnTTMVLnTstartloopn364643)12181915(64)(+=++++=++=×3.5向量處理機(jī)第三十七頁,共四十三頁,編輯于2023年,星期日2.向量處理機(jī)的峰值性能R
R表示當(dāng)向量長度為無窮大時,向量處理機(jī)的最高性能,也稱為峰值性能。
向量處理機(jī)的峰值性能可以表示為:的時鐘周期數(shù)向量指令序列執(zhí)行所需時鐘頻率算次數(shù)向量指令序列中浮點(diǎn)運(yùn)×=∞∞nRlim對于例題3.10向量指令序列中的操作而言,只有“MULTFVV2,F0,V1”和“ADDVV4,V2,V3”兩條浮點(diǎn)操作向量指令。假設(shè)該向量處理機(jī)的時鐘頻率為200MHz,那么:3.5向量處理機(jī)第三十八頁,共四十三頁,編輯于2023年,星期日的時鐘周期數(shù)向量指令序列執(zhí)行所需時鐘頻率算次數(shù)向量指令序列中浮點(diǎn)運(yùn)×=∞∞nRlim
2×n×200=∞nlimMFLOPSn64
×64+3nMFLOPS
2×n×200=∞nlim4nMFLOPS=100MFLOPS3.5向量處理機(jī)第三十
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年高中地理 第4章 文明旅游 4.2 出游前的準(zhǔn)備說課稿 湘教版選修3
- 2024年高中語文 第3課 老人與海說課稿4 新人教版必修3
- 2024-2025學(xué)年新教材高中物理 第2章 習(xí)題課 勻變速直線運(yùn)動的推論(二)說課稿 新人教版必修第一冊001
- 2024秋七年級數(shù)學(xué)上冊 第1章 豐富的圖形世界1.3 截一個幾何體說課稿(新版)北師大版
- 二零二五年度智慧城市建設(shè)投資框架協(xié)議
- 2024年秋七年級英語上冊 Unit 5 Do you have a soccer ball Section A說課稿 (新版)人教新目標(biāo)版
- 二零二五年度家庭保姆服務(wù)合同模板-@-1
- 消防員簽五年合同范本(2篇)
- 2024年高中生物 專題5 生態(tài)工程 5.1 生態(tài)工程的基本原理說課稿 新人教版選修3
- 活動策劃與推廣合同(2篇)
- 臨床放射性皮膚損傷的護(hù)理
- 員工積分考核管理辦法
- 四川省成都市溫江區(qū)2023-2024學(xué)年四年級下學(xué)期期末語文試卷
- 2024中國婦科臨床實(shí)踐指南-卵巢癌
- 2024-2030年中國靶機(jī)行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略分析報(bào)告
- 2024過敏性休克搶救指南(2024)課件干貨分享
- 醫(yī)療行業(yè)提高醫(yī)院服務(wù)質(zhì)量的改進(jìn)方案三篇
- JJG(交通) 192-2023 負(fù)壓篩析儀
- 七年級下冊第四單元第七章 人類活動對生物圈的影響作業(yè)設(shè)計(jì)
- 農(nóng)行網(wǎng)點(diǎn)負(fù)責(zé)人述職報(bào)告范本
- 常見軍事訓(xùn)練傷的康復(fù)流程
評論
0/150
提交評論