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

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

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

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

【部分圖文】:

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

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

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


圖2LLVMIR存在階段

圖2LLVMIR存在階段

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


圖3LLVMIR降級(jí)流程

圖3LLVMIR降級(jí)流程

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


圖4節(jié)點(diǎn)融合

圖4節(jié)點(diǎn)融合

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



本文編號(hào):3896511

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

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


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

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