面向FT64流處理器中高密度計(jì)算的VLIW編譯優(yōu)化技術(shù)
發(fā)布時(shí)間:2020-04-07 10:17
【摘要】: 流體系結(jié)構(gòu)是近年來(lái)新興的一種高性能體系結(jié)構(gòu)。FT64作為國(guó)內(nèi)第一款自主研究設(shè)計(jì)的64位流處理器,其核心級(jí)采用了SIMD+VLIW的執(zhí)行模式,開發(fā)程序中的并行性,其運(yùn)算簇內(nèi)采用分布式寄存器文件結(jié)構(gòu),支持大規(guī)模功能單元陣列對(duì)寄存器容量及速度的需要。VLIW技術(shù)有利于芯片提升頻率、降低功耗,同時(shí)也對(duì)編譯器提出了很高的要求,而當(dāng)應(yīng)用領(lǐng)域擴(kuò)展后,應(yīng)用對(duì)寄存器需求的急劇增大使得分布式寄存器文件中單寄存器文件的容量成為了應(yīng)用編程和編譯中的一個(gè)瓶頸。 本文研究了流處理器中的VLIW編譯技術(shù),目的是為FT64提供高效的VLIW編譯器,為用戶程序的高效執(zhí)行提供編譯支持。 在目前已有研究的基礎(chǔ)上,本文基于ISCD源代碼、應(yīng)用背景和工程實(shí)踐需要,針對(duì)FT64流處理器設(shè)計(jì)實(shí)現(xiàn)了其核心級(jí)編譯器。在研究了相關(guān)背景后,編譯器的實(shí)現(xiàn)主要集中于策略的選擇、工程實(shí)現(xiàn)及對(duì)瓶頸部分的處理上。通信調(diào)度保證了VLIW調(diào)度在針對(duì)FT64核心級(jí)的共享互連結(jié)構(gòu)時(shí)的高效;采用load schedule策略在不降低程序性能的情況下使得寄存器分配成功,避免了因?yàn)榧拇嫫鬟^載而造成的性能損失;針對(duì)程序中的特征采用乘加操作自動(dòng)合并算法提高編譯效率。 本文實(shí)現(xiàn)的編譯器目前已經(jīng)在FT64流處理器的系統(tǒng)運(yùn)行中投入實(shí)際使用,并取得了很好的效果。本文還在FT64上對(duì)編譯器的各項(xiàng)性能進(jìn)行了實(shí)測(cè)和性能分析,實(shí)現(xiàn)結(jié)果表明,在采取了多種優(yōu)化措施后,編譯器能夠很好的識(shí)別出程序中的并行性,取得了預(yù)期的效果。
【圖文】:
因而主要采用分布式寄存器文件,以共享互連總線的方式連接。傳統(tǒng)的通用處理器體系結(jié)構(gòu)如圖1.11’。]所示,研究表明它們并不適合于計(jì)算密集型應(yīng)用,因?yàn)樗鼈冸y以支撐足夠多的功能單元來(lái)滿足密集計(jì)算程序的計(jì)算需求。通過圖1.1可以看出,每個(gè)功能單元的輸入輸出都通過一個(gè)獨(dú)占的總線連接到一個(gè)集中的寄存器文件上,這個(gè)寄存器文件要為每個(gè)連接到其上的總線提供一個(gè)端口。研究表明在這種結(jié)構(gòu)中,第2頁(yè)
1~3個(gè)局部寄存器文件(L盯),局部寄存器文件的讀端口直接與對(duì)應(yīng)功能單元的輸入端口連接,每個(gè)功能單元只能從自己的局部寄存器文件中讀取操作數(shù)。所有寄存器文件的寫端口同所有功能單元的輸出端口之間通過圖1.2所示的共享互連連接,使得數(shù)據(jù)可以在不同寄存器文件間通信傳輸。共享互連交叉開關(guān)保證了每個(gè)功能單元的輸出端口通過一個(gè)交叉點(diǎn)可以無(wú)阻塞得與一個(gè)空閑寄存器文件寫端口相連,所有的寄存器文件和功能單元間可以同時(shí)傳輸數(shù)據(jù),因此擁有很高的帶寬。而且在這種結(jié)構(gòu)下所有寄存器文件(包括交叉開關(guān))面積之和改進(jìn)到。((N/c)’)的量級(jí),,其中N是功能單元的數(shù)目,c是一個(gè)常數(shù),延遲和功耗也有相同的關(guān)系。由于帶寬優(yōu)勢(shì),以及硬件開銷較小,絕大多數(shù)新一代計(jì)算密集型處理器在擴(kuò)展到大規(guī)模ALU時(shí)都采用了分布式寄存器文件結(jié)構(gòu)。Imagine流處理器的流片結(jié)果表明
【學(xué)位授予單位】:國(guó)防科學(xué)技術(shù)大學(xué)
【學(xué)位級(jí)別】:碩士
【學(xué)位授予年份】:2007
【分類號(hào)】:TP332
【圖文】:
因而主要采用分布式寄存器文件,以共享互連總線的方式連接。傳統(tǒng)的通用處理器體系結(jié)構(gòu)如圖1.11’。]所示,研究表明它們并不適合于計(jì)算密集型應(yīng)用,因?yàn)樗鼈冸y以支撐足夠多的功能單元來(lái)滿足密集計(jì)算程序的計(jì)算需求。通過圖1.1可以看出,每個(gè)功能單元的輸入輸出都通過一個(gè)獨(dú)占的總線連接到一個(gè)集中的寄存器文件上,這個(gè)寄存器文件要為每個(gè)連接到其上的總線提供一個(gè)端口。研究表明在這種結(jié)構(gòu)中,第2頁(yè)
1~3個(gè)局部寄存器文件(L盯),局部寄存器文件的讀端口直接與對(duì)應(yīng)功能單元的輸入端口連接,每個(gè)功能單元只能從自己的局部寄存器文件中讀取操作數(shù)。所有寄存器文件的寫端口同所有功能單元的輸出端口之間通過圖1.2所示的共享互連連接,使得數(shù)據(jù)可以在不同寄存器文件間通信傳輸。共享互連交叉開關(guān)保證了每個(gè)功能單元的輸出端口通過一個(gè)交叉點(diǎn)可以無(wú)阻塞得與一個(gè)空閑寄存器文件寫端口相連,所有的寄存器文件和功能單元間可以同時(shí)傳輸數(shù)據(jù),因此擁有很高的帶寬。而且在這種結(jié)構(gòu)下所有寄存器文件(包括交叉開關(guān))面積之和改進(jìn)到。((N/c)’)的量級(jí),,其中N是功能單元的數(shù)目,c是一個(gè)常數(shù),延遲和功耗也有相同的關(guān)系。由于帶寬優(yōu)勢(shì),以及硬件開銷較小,絕大多數(shù)新一代計(jì)算密集型處理器在擴(kuò)展到大規(guī)模ALU時(shí)都采用了分布式寄存器文件結(jié)構(gòu)。Imagine流處理器的流片結(jié)果表明
【學(xué)位授予單位】:國(guó)防科學(xué)技術(shù)大學(xué)
【學(xué)位級(jí)別】:碩士
【學(xué)位授予年份】:2007
【分類號(hào)】:TP332
【共引文獻(xiàn)】
相關(guān)期刊論文 前10條
1 林海波,李文龍,湯志忠;IA-64中軟件流水的寄存器需求研究[J];計(jì)算機(jī)研究與發(fā)展;2004年01期
2 胡定磊;陳書明;劉春林;;基于超塊的統(tǒng)一分簇與模調(diào)度[J];計(jì)算機(jī)研究與發(fā)展;2007年08期
3 陳微;王志英;肖儂;沈立;陸洪毅;;降低協(xié)同設(shè)計(jì)虛擬機(jī)啟動(dòng)開銷的譯碼后指令緩存技術(shù)[J];計(jì)算機(jī)研究與發(fā)展;2011年01期
4 楊書鑫;薛麗萍;張兆慶;;迭代式全局指令調(diào)度[J];計(jì)算機(jī)科學(xué);2004年07期
5 胡巍,周學(xué)海,瞿曉明,陸嵐;可重定向編譯器中的體系結(jié)構(gòu)描述與代碼調(diào)度[J];計(jì)算機(jī)工程;2004年16期
6 沈立,戴葵,王志英;以基本塊為單位的非順序指令預(yù)取[J];計(jì)算機(jī)工程與科學(xué);2003年04期
7 劉e
本文編號(hào):2617783
本文鏈接:http://sikaile.net/kejilunwen/jisuanjikexuelunwen/2617783.html
最近更新
教材專著