[發(fā)明專利]用于粗粒度可重構(gòu)處理器的編譯優(yōu)化方法有效
| 申請(qǐng)?zhí)枺?/td> | 201410443909.4 | 申請(qǐng)日: | 2014-09-02 |
| 公開(公告)號(hào): | CN104615474B | 公開(公告)日: | 2018-06-22 |
| 發(fā)明(設(shè)計(jì))人: | 尹首一;徐兵;劉雷波;魏少軍;朱建峰 | 申請(qǐng)(專利權(quán))人: | 清華大學(xué) |
| 主分類號(hào): | G06F8/41 | 分類號(hào): | G06F8/41 |
| 代理公司: | 北京清亦華知識(shí)產(chǎn)權(quán)代理事務(wù)所(普通合伙) 11201 | 代理人: | 張大威 |
| 地址: | 100084 北京*** | 國(guó)省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說(shuō)明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 可重構(gòu)處理器 粗粒度 數(shù)據(jù)流圖 映射圖 編譯 預(yù)處理 調(diào)度 原始數(shù)據(jù)流 布線資源 間隔設(shè)置 三維布線 低功耗 映射 功耗 優(yōu)化 保存 檢測(cè) 創(chuàng)建 | ||
本發(fā)明提出一種用于粗粒度可重構(gòu)處理器的編譯優(yōu)化方法,包括以下步驟:對(duì)原始數(shù)據(jù)流圖進(jìn)行預(yù)處理,以獲取修改后的數(shù)據(jù)流圖,計(jì)算最小啟動(dòng)間隔并將最小啟動(dòng)間隔設(shè)置為映射起點(diǎn);創(chuàng)建粗粒度可重構(gòu)處理器的三維布線資源模限制圖;對(duì)布線資源模限制圖進(jìn)行圖子式檢測(cè),以獲取修改后的數(shù)據(jù)流圖的映射圖;保存對(duì)應(yīng)于最小啟動(dòng)間隔的映射圖的所有調(diào)度方案;從所有調(diào)度方案中選擇功耗最小的路徑作為最優(yōu)方案。本發(fā)明的方法,具有高性能、低功耗的優(yōu)點(diǎn)。
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,尤其涉及一種用于粗粒度可重構(gòu)處理器的編譯優(yōu)化方法。
背景技術(shù)
可重構(gòu)處理器(reconfigurable processor)一般由主處理器和可重構(gòu)計(jì)算陣列(Reconfigurable Computing Array,RCA)耦合而成。移動(dòng)時(shí)代的大部分應(yīng)用包含大量計(jì)算密集型的程序,因此特別適合在可重構(gòu)處理器上執(zhí)行,其中主處理器負(fù)責(zé)給RCA進(jìn)行配置以改變其功能來(lái)運(yùn)行計(jì)算密集型程序。可編程邏輯陣列(field programmable gate array,F(xiàn)PGA)是可重構(gòu)處理器的一個(gè)良好范例,但是FPGA架構(gòu)在比特級(jí)(bit-level)重構(gòu)的基礎(chǔ)之上,即數(shù)據(jù)通路是由許多個(gè)比特級(jí)處理單元互聯(lián)而成。這種復(fù)雜互聯(lián)帶來(lái)幾個(gè)缺陷,一是布線功耗開銷極大,二是資源利用率低。另外復(fù)雜互聯(lián)需要巨大的配置信息,較長(zhǎng)時(shí)間的準(zhǔn)備配置信息限制了進(jìn)行動(dòng)態(tài)可重構(gòu)的可能性。
粗粒度可重構(gòu)處理器(coarse-grained reconfigurable processor,CGRA)將比特級(jí)重構(gòu)單元擴(kuò)大為多比特可重構(gòu)數(shù)據(jù)通路,稱之為處理單元(processing element,PE),每個(gè)PE經(jīng)重構(gòu)后能執(zhí)行完整的算子。這樣就避免了FPGA的幾點(diǎn)缺陷。同時(shí)CGRA的粗粒度也帶來(lái)了編譯器設(shè)計(jì)的挑戰(zhàn)。與傳統(tǒng)處理器相比,CGRA的分布式寄存器分布還有RCA陣列的網(wǎng)狀互聯(lián)結(jié)構(gòu)帶來(lái)了布局布線的要求。與FPGA相比,CGRA的有限布線資源對(duì)布局布線的要求更加嚴(yán)格。因此編譯器的設(shè)計(jì)在粗粒度可重構(gòu)處理器領(lǐng)域相當(dāng)關(guān)鍵。
由于編譯后得到的程序有高性能和低功耗是矛盾的兩面,因此前面的研究都僅僅集中于優(yōu)化其中一點(diǎn)。在高性能領(lǐng)域,常用的方法是移植自多核處理器的軟件流水技術(shù),該技術(shù)通過(guò)重疊不同循環(huán)實(shí)例之間的算子,形成循環(huán)內(nèi)核,從而獲得并行性,縮短程序執(zhí)行時(shí)間。其中不同循環(huán)之間的啟動(dòng)間隔(Initial Interval,II)的長(zhǎng)度就等于循環(huán)內(nèi)核的長(zhǎng)度,由于循環(huán)內(nèi)核包含一次循環(huán)所有的算子,因此II的長(zhǎng)度就等于并行化以后程序的執(zhí)行時(shí)間,因此II越短,程序執(zhí)行時(shí)間越短。又通過(guò)分析知百分之九十的執(zhí)行時(shí)間花費(fèi)百分之十的循環(huán)代碼上,因此對(duì)關(guān)鍵循環(huán)的并行化處理是提高性能的良好方法。在CGRA上比較有效的是子圖同胚,子圖滿同態(tài),圖子式模調(diào)度方法。在低功耗方面,常用的是減少配置功耗和可重構(gòu)陣列的計(jì)算功耗兩種,其中后者的通用性更強(qiáng)。后者引入固定雙供電電壓,減少RCA上運(yùn)行非關(guān)鍵算子的PE的供電電壓,由于此類PE數(shù)量不少,因此能夠減少功耗。但上述的研究中未能把這兩種理念結(jié)合起來(lái)。
發(fā)明內(nèi)容
本發(fā)明旨在至少在一定程度上解決相關(guān)技術(shù)中的技術(shù)問(wèn)題之一。
為此,本發(fā)明的目的在于提出一種高性能、低功耗的用于粗粒度可重構(gòu)處理器的編譯優(yōu)化方法。
為了實(shí)現(xiàn)上述目的,本發(fā)明實(shí)施例的用于粗粒度可重構(gòu)處理器的編譯優(yōu)化方法,包括以下步驟:對(duì)原始數(shù)據(jù)流圖進(jìn)行預(yù)處理,以獲取修改后的數(shù)據(jù)流圖,計(jì)算最小啟動(dòng)間隔并將所述最小啟動(dòng)間隔設(shè)置為映射起點(diǎn);創(chuàng)建所述粗粒度可重構(gòu)處理器的三維布線資源模限制圖;對(duì)所述布線資源模限制圖進(jìn)行圖子式檢測(cè),以獲取相應(yīng)的所述修改后的數(shù)據(jù)流圖的映射圖;保存所述修改后的數(shù)據(jù)流圖的映射圖的所有調(diào)度方案;依據(jù)功耗函數(shù)從所述所有調(diào)度方案中選擇功耗最小的路徑作為最優(yōu)方案。
根據(jù)本發(fā)明實(shí)施例的用于粗粒度可重構(gòu)處理器的編譯優(yōu)化方法,從采用分層電壓優(yōu)化的方法從所有的映射圖中選擇最優(yōu)的方案,有效地將分層電壓架構(gòu)與循環(huán)映射并行化結(jié)合起來(lái),具有高效能、低功耗的優(yōu)點(diǎn)。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于清華大學(xué),未經(jīng)清華大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410443909.4/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 可重構(gòu)密碼協(xié)處理器電路
- 動(dòng)態(tài)可重構(gòu)處理器之間的數(shù)據(jù)傳輸方法、處理器和系統(tǒng)
- 一種動(dòng)態(tài)可重構(gòu)處理器間一對(duì)一數(shù)據(jù)交互方法及裝置
- 一種由軟件方式生成動(dòng)態(tài)可重構(gòu)處理器配置信息的系統(tǒng)
- 一種動(dòng)態(tài)可重構(gòu)陣列處理器的構(gòu)令流工作方法
- 一種可重構(gòu)的星載設(shè)備
- 基于大規(guī)模粗粒度嵌入式可重構(gòu)系統(tǒng)及其處理方法
- 一種基于大規(guī)模粗粒度可重構(gòu)處理器的SM4-128加密算法實(shí)現(xiàn)方法及系統(tǒng)
- 一種基于大規(guī)模粗粒度可重構(gòu)處理器的SM4-128的密鑰擴(kuò)展實(shí)現(xiàn)方法及系統(tǒng)
- 一種混合處理器架構(gòu)及其任務(wù)調(diào)度方法
- 用于數(shù)據(jù)去重的方法、裝置和系統(tǒng)
- 預(yù)測(cè)移動(dòng)終端位置的方法及裝置
- 視頻編碼方法、裝置、計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)和計(jì)算機(jī)設(shè)備
- 原料的粒度分布測(cè)定裝置、粒度分布測(cè)定方法以及空隙率測(cè)定裝置
- 多粒度交叉模態(tài)特征融合行人再識(shí)別方法和再識(shí)別系統(tǒng)
- 語(yǔ)句分析處理方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 粒度分布測(cè)定裝置和粒度分布測(cè)定方法
- 對(duì)話狀態(tài)跟蹤系統(tǒng)及方法和人機(jī)對(duì)話裝置及方法
- 一種基于點(diǎn)云數(shù)據(jù)建模的方法、裝置和電子設(shè)備
- 一種粗粒度可重構(gòu)數(shù)據(jù)處理架構(gòu)及其數(shù)據(jù)處理方法
- 一種數(shù)據(jù)發(fā)送方法及發(fā)射機(jī)、接收機(jī)和無(wú)線通信系統(tǒng)
- 處理混合流的數(shù)據(jù)流圖
- 一種圖像的傳輸方法、成像設(shè)備、系統(tǒng)及車輛
- 數(shù)據(jù)流圖配置
- 一種雷達(dá)同步數(shù)據(jù)流圖模型調(diào)度序列生成方法
- 數(shù)據(jù)流執(zhí)行圖的自動(dòng)調(diào)整
- 一種數(shù)據(jù)流圖處理方法、裝置、設(shè)備以及可讀存儲(chǔ)介質(zhì)
- 運(yùn)行數(shù)據(jù)流圖的方法、電子電路、電子設(shè)備和介質(zhì)
- 數(shù)據(jù)流圖處理方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)
- 數(shù)據(jù)流多路化裝置、數(shù)據(jù)流多路化方法及記錄媒體





