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