并行程序解析性能模型的自動(dòng)生成技術(shù)研究
發(fā)布時(shí)間:2017-08-29 01:09
本文關(guān)鍵詞:并行程序解析性能模型的自動(dòng)生成技術(shù)研究
更多相關(guān)文章: 高性能計(jì)算 并行程序 性能評(píng)測(cè) 性能模型 解析方法 LLVM
【摘要】:隨著人類認(rèn)識(shí)自然和改造自然需求的增長(zhǎng),大規(guī)模高性能計(jì)算已經(jīng)成為人們生產(chǎn)生活中不可缺少的研究方法。高性能計(jì)算被廣泛應(yīng)用于氣象預(yù)測(cè)、航空航天、核試驗(yàn)等重要領(lǐng)域,實(shí)現(xiàn)科學(xué)計(jì)算的程序一般需要在成千上萬(wàn)個(gè)處理器上并行運(yùn)行,程序自身的性能和程序與平臺(tái)的匹配程度都會(huì)對(duì)運(yùn)行性能和成本產(chǎn)生顯著影響。為了改善高性能計(jì)算程序的性能,為其選擇匹配的運(yùn)行平臺(tái),評(píng)測(cè)高性能計(jì)算程序的性能成為研究人員的又一研究方向。高性能計(jì)算領(lǐng)域的科學(xué)計(jì)算程序一般是單程序多數(shù)據(jù)(Single Program Multiple Data,SPMD)形式的并行程序,因此本課題的主要研究?jī)?nèi)容是,以SPMD形式的并行程序?yàn)檠芯繉?duì)象,設(shè)計(jì)并實(shí)現(xiàn)并行程序解析性能模型的自動(dòng)生成方案。 評(píng)測(cè)程序性能的常用方法有實(shí)際測(cè)量法、基準(zhǔn)測(cè)試法、性能模擬法和性能模型法,每種方法都有其適用的范圍和局限性。通過(guò)分析這些評(píng)測(cè)方法的優(yōu)缺點(diǎn),選擇以性能模型法為基礎(chǔ)建立解析性能模型自動(dòng)生成方案。傳統(tǒng)性能模型法具有人工計(jì)算量大、需要使用者深入理解程序的缺點(diǎn),本課題通過(guò)在計(jì)算部分借助分析工具和在通信部分引入函數(shù)封套技術(shù)規(guī)避了這些缺點(diǎn)。 在將性能度量角度確定為程序執(zhí)行時(shí)間的基礎(chǔ)上,對(duì)并行程序解析性能模型的自動(dòng)生成問(wèn)題進(jìn)行了描述。通過(guò)分析SPMD程序的特征,分別將程序的計(jì)算部分和通信部分進(jìn)行了數(shù)學(xué)抽象,,建立了描述時(shí)間性能的模型,將平臺(tái)相關(guān)的參數(shù)單獨(dú)處理,為跨平臺(tái)性能預(yù)測(cè)提供了前提。 設(shè)計(jì)了完整的性能模型自動(dòng)生成方案。以目標(biāo)應(yīng)用程序的LLVM(Low LevelVirtual Machine) intermediate representation(IR)文件為分析對(duì)象,這在很大程度上降低了對(duì)應(yīng)用程序編程語(yǔ)言的限制。對(duì)于計(jì)算部分,使用輔助分析工具LLVM實(shí)現(xiàn)熱點(diǎn)基本塊執(zhí)行次數(shù)和基本算術(shù)操作次數(shù)的自動(dòng)統(tǒng)計(jì),對(duì)于通信部分,通過(guò)重構(gòu)應(yīng)用程序的循環(huán)結(jié)構(gòu)確定通信函數(shù)的主循環(huán)體,使用文本解析的方法獲得主循環(huán)體的執(zhí)行次數(shù)和內(nèi)部的通信函數(shù)信息,最后通過(guò)曲線擬合的方法確定熱點(diǎn)基本塊執(zhí)行次數(shù)和主循環(huán)體循環(huán)次數(shù)的變化規(guī)律,生成應(yīng)用程序的性能模型。 將解析性能模型自動(dòng)生成方案應(yīng)用于CGPOP(Conjugate Gradient ParallelOcean Program),生成了以運(yùn)行規(guī)模為變量的性能模型。使用該性能模型評(píng)測(cè)可以測(cè)量的程序性能和預(yù)測(cè)不可測(cè)量的程序性能,并與實(shí)際測(cè)量的程序性能進(jìn)行比較,從評(píng)測(cè)效果和預(yù)測(cè)效果兩個(gè)方面證明了性能模型的有效性和準(zhǔn)確性。
【關(guān)鍵詞】:高性能計(jì)算 并行程序 性能評(píng)測(cè) 性能模型 解析方法 LLVM
【學(xué)位授予單位】:哈爾濱工業(yè)大學(xué)
【學(xué)位級(jí)別】:碩士
【學(xué)位授予年份】:2014
【分類號(hào)】:TP38
【目錄】:
- 摘要4-5
- Abstract5-10
- 第1章 緒論10-22
- 1.1 課題背景及研究目的和意義10-11
- 1.2 相關(guān)研究領(lǐng)域的進(jìn)展與成果11-19
- 1.2.1 常見程序性能評(píng)測(cè)方法研究現(xiàn)狀11-16
- 1.2.2 并行編程模型16
- 1.2.3 輔助分析工具 LLVM16-17
- 1.2.4 目標(biāo)應(yīng)用程序 CGPOP17-18
- 1.2.5 數(shù)據(jù)處理工具簡(jiǎn)介與比較分析18-19
- 1.3 本文的主要研究?jī)?nèi)容19-20
- 1.4 本文的組織結(jié)構(gòu)20-22
- 第2章 性能模型和方案整體設(shè)計(jì)22-35
- 2.1 基本概念22-24
- 2.1.1 程序規(guī)模22-23
- 2.1.2 基本塊23
- 2.1.3 熱點(diǎn)基本塊23
- 2.1.4 標(biāo)準(zhǔn)熱點(diǎn)基本塊23-24
- 2.1.5 計(jì)算模型與通信模型24
- 2.1.6 strong scaling 與 weak scaling24
- 2.2 性能模型評(píng)測(cè)法原型和問(wèn)題描述24-26
- 2.2.1 性能模型評(píng)測(cè)法原型24-25
- 2.2.2 性能度量角度25
- 2.2.3 解析性能模型的自動(dòng)生成問(wèn)題25
- 2.2.4 自動(dòng)生成方案的應(yīng)用場(chǎng)景25-26
- 2.3 并行程序的解析性能模型26-31
- 2.3.1 SPMD 程序特征分析27
- 2.3.2 計(jì)算模型的形式及含義27-29
- 2.3.3 通信模型的形式及含義29-30
- 2.3.4 性能模型的跨平臺(tái)預(yù)測(cè)能力30-31
- 2.4 性能模型自動(dòng)生成方案的整體設(shè)計(jì)31-33
- 2.4.1 性能模型自動(dòng)生成方案的整體流程31-33
- 2.4.2 性能模型自動(dòng)生成方案的框架結(jié)構(gòu)33
- 2.5 本章小結(jié)33-35
- 第3章 計(jì)算模型的自動(dòng)生成35-49
- 3.1 信息采集工具介紹和問(wèn)題描述35-40
- 3.1.1 LLVM profiling 功能介紹35
- 3.1.2 Edge Profiling 信息采集原理35-38
- 3.1.3 LLVM 修改與配置38-40
- 3.1.4 計(jì)算模型自動(dòng)生成問(wèn)題40
- 3.2 計(jì)算模型自動(dòng)生成模塊的設(shè)計(jì)實(shí)現(xiàn)40-48
- 3.2.1 編譯配置模塊的設(shè)計(jì)實(shí)現(xiàn)40-41
- 3.2.2 計(jì)算信息采集模塊的設(shè)計(jì)實(shí)現(xiàn)41
- 3.2.3 計(jì)算信息處理與數(shù)據(jù)抽取模塊的設(shè)計(jì)實(shí)現(xiàn)41-45
- 3.2.4 計(jì)算模型求解模塊的設(shè)計(jì)實(shí)現(xiàn)45-48
- 3.3 本章小結(jié)48-49
- 第4章 通信模型的自動(dòng)生成49-58
- 4.1 關(guān)鍵技術(shù)分析和問(wèn)題描述49-52
- 4.1.1 mpiP 修改與配置49-50
- 4.1.2 循環(huán)結(jié)構(gòu)重構(gòu)算法50-51
- 4.1.3 代表進(jìn)程的選擇算法51-52
- 4.1.4 通信模型的自動(dòng)生成問(wèn)題52
- 4.2 通信模型自動(dòng)生成模塊的設(shè)計(jì)實(shí)現(xiàn)52-57
- 4.2.1 編譯配置模塊的設(shè)計(jì)實(shí)現(xiàn)52
- 4.2.2 通信信息采集模塊的設(shè)計(jì)實(shí)現(xiàn)52-53
- 4.2.3 通信信息處理與數(shù)據(jù)抽取模塊的設(shè)計(jì)實(shí)現(xiàn)53-56
- 4.2.4 通信模型求解模塊的設(shè)計(jì)實(shí)現(xiàn)56-57
- 4.3 本章小結(jié)57-58
- 第5章 CGPOP 性能模型的自動(dòng)生成與效果評(píng)測(cè)58-71
- 5.1 實(shí)驗(yàn)配置58-60
- 5.1.1 實(shí)驗(yàn)平臺(tái)介紹58
- 5.1.2 程序規(guī)模設(shè)置58-59
- 5.1.3 閾值設(shè)置59
- 5.1.4 CGPOP 編譯選項(xiàng)配置59-60
- 5.2 性能模型生成過(guò)程及相關(guān)數(shù)據(jù)60-66
- 5.2.1 計(jì)算模型的生成過(guò)程及數(shù)據(jù)60-64
- 5.2.2 通信模型的生成過(guò)程及數(shù)據(jù)64-66
- 5.3 評(píng)測(cè)效果及誤差分析66-70
- 5.3.1 性能模型對(duì)已知情況的評(píng)測(cè)效果66-68
- 5.3.2 性能模型對(duì)未知情況的預(yù)測(cè)效果68-70
- 5.4 本章小結(jié)70-71
- 結(jié)論71-72
- 參考文獻(xiàn)72-76
- 攻讀碩士學(xué)位期間發(fā)表的論文及其他成果76-78
- 致謝78
【參考文獻(xiàn)】
中國(guó)期刊全文數(shù)據(jù)庫(kù) 前4條
1 韓冀中,韓承德;高性能計(jì)算技術(shù)的發(fā)展現(xiàn)狀及趨勢(shì)[J];中國(guó)工程科學(xué);2000年01期
2 劉華,徐煒民,孫強(qiáng);基于MPI并行程序的性能評(píng)測(cè)可視化工具[J];計(jì)算機(jī)工程;2004年10期
3 遲學(xué)斌;趙毅;;高性能計(jì)算技術(shù)及其應(yīng)用[J];中國(guó)科學(xué)院院刊;2007年04期
4 王蕾;崔慧敏;陳莉;馮曉兵;;任務(wù)并行編程模型研究與進(jìn)展[J];軟件學(xué)報(bào);2013年01期
本文編號(hào):750481
本文鏈接:http://sikaile.net/kejilunwen/jisuanjikexuelunwen/750481.html
最近更新
教材專著