天堂国产午夜亚洲专区-少妇人妻综合久久蜜臀-国产成人户外露出视频在线-国产91传媒一区二区三区

當(dāng)前位置:主頁 > 科技論文 > 計算機(jī)論文 >

基于LLVM編譯器的節(jié)點融合優(yōu)化方法

發(fā)布時間:2024-02-07 01:12
  LLVM是以C++編寫的架構(gòu)編譯器的框架系統(tǒng),支持多后端和交叉編譯,用于優(yōu)化程序的編譯時間、鏈接時間、運行時間和空閑時間。節(jié)點融合是一種簡單有效的優(yōu)化方法,其基本思想為將多個節(jié)點優(yōu)化為一個高效的融合節(jié)點,減少諸如指令、寄存器、時鐘周期和訪存等開銷,以達(dá)到減少程序運行時間,提升訪存效率等目的。為了提升LLVM編譯器的性能,文中在LLVM編譯流程的中間表示階段和DAG合并階段、指令選擇階段提出了節(jié)點融合優(yōu)化方法。在國產(chǎn)平臺申威處理器下,以CLANG和FLANG為編譯器前端,LLVM為編譯器后端,基于SPEC CPU2006測試集進(jìn)行了評估,實驗結(jié)果表明,節(jié)點融合優(yōu)化有利于提高編譯器性能和減少程序運行時間,優(yōu)化后最大加速比為1.59,平均加速比為1.13。

【文章頁數(shù)】:7 頁

【部分圖文】:

圖1LLVM結(jié)構(gòu)

圖1LLVM結(jié)構(gòu)

LLVM是以面向?qū)ο缶幊陶Z言C++編寫的構(gòu)架編譯器的框架系統(tǒng),是一種支持多后端的交叉編譯器,可對程序的編譯時間、鏈接時間、運行時間和空閑時間進(jìn)行優(yōu)化[7]。LLVM編譯器基于傳統(tǒng)的三段式設(shè)計,通過翻譯成通用的中間表示語言作為中端優(yōu)化器的輸入,用于支持不同的前端語言和架構(gòu)[8],其....


圖2LLVMIR存在階段

圖2LLVMIR存在階段

LLVMIR屬于高級語言前端的輸出,將作為中間代碼優(yōu)化器的輸入。中間表示應(yīng)該具有兩個重要的性質(zhì):1)易于產(chǎn)生;2)易于翻譯成目標(biāo)平臺代碼[9]。易于產(chǎn)生可以保證不同的高級語言源程序易于轉(zhuǎn)換為中間表示,也可以與其他中間表示相互轉(zhuǎn)換。易于翻譯成目標(biāo)平臺代碼表明中間表示應(yīng)具有高度抽象....


圖3LLVMIR降級流程

圖3LLVMIR降級流程

DAG是一種重要的數(shù)據(jù)結(jié)構(gòu),指的是一個無回路的有向圖,在尋求最短路徑、數(shù)據(jù)壓縮等多種算法中均有使用。LLVM在對中間表示進(jìn)行降級的過程中,會將LLVMIR轉(zhuǎn)換成DAG的形式,然后對DAG圖進(jìn)行降級操作,其處理流程如圖3所示。從圖3中可以看到,在初始階段LLVMIR是平臺無關(guān)的....


圖4節(jié)點融合

圖4節(jié)點融合

節(jié)點融合指將多個節(jié)點融合為一個高效節(jié)點,節(jié)點融合優(yōu)化方法在許多編譯器中均有應(yīng)用。比如,加速線性代數(shù)編譯器(AcceleratedLinearAlgebra,XLA)利用節(jié)點融合優(yōu)化將計算圖中的多個算子融合為一個高效算子,以提高執(zhí)行速度,改善內(nèi)存使用,減少對自定義操作的依賴。節(jié)....



本文編號:3896511

資料下載
論文發(fā)表

本文鏈接:http://sikaile.net/kejilunwen/jisuanjikexuelunwen/3896511.html


Copyright(c)文論論文網(wǎng)All Rights Reserved | 網(wǎng)站地圖 |

版權(quán)申明:資料由用戶68d0f***提供,本站僅收錄摘要或目錄,作者需要刪除請E-mail郵箱bigeng88@qq.com