Please use this identifier to cite or link to this item:
http://tdr.lib.ntu.edu.tw/jspui/handle/123456789/68400| Title: | 降低預執行最佳化的負面影響於使用者輸入相關的程式 Minimizing Negative Impact from Input-sensitive Profiling Guided Optimization |
| Authors: | Yu-Ling Wang 王友伶 |
| Advisor: | 徐慰中 |
| Keyword: | 編譯器,優化,預執行優化,輸入靈敏度, Compiler,Optimization,Profile guided optimization,input sensitivity, |
| Publication Year : | 2017 |
| Degree: | 碩士 |
| Abstract: | 預執行優化技巧是編譯器利用程式實際執行的行為來做優化,但前提 是先前收集到的程式特徵要和真實線上情況相近,否則預執行優化技 巧會傷害程式效能。這個研究討論在 LLVM 上的抽樣預執行優化的流 程,舉出了一些預執行優化降低程式效能的例子,並且嘗試以線性合 併靜態分支預測與收集到的程式特徵來做保守的預執行優化。實驗結 果顯示此方法在一些程式之中降低預執行優化的負面影響。 Profile Guided Optimizations (PGO) exploit runtime profile information from sample runs to predict the execution behavior of a program. However, the premise of PGO is that the profile of a sample run could likely represent the behavior of the program execution in general. In some conditions, this premise is not true, and when that happens, profile-guided optimizations may not help. Worse yet, they could significantly degrade the performance of the program. This work discusses the sampling profile guided optimizations adopted in LLVM and shows performance degradation of multiple pro- grams after PGO applied. We propose a conservative approach of using a linear combination of static branch prediction and the gathered branch profile from sample runs to guide optimizations. Such a combination has shown to be effective on reducing the negative impact of the original PGO in LLVM on multiple programs. |
| URI: | http://tdr.lib.ntu.edu.tw/jspui/handle/123456789/68400 |
| DOI: | 10.6342/NTU201703357 |
| Fulltext Rights: | 有償授權 |
| Appears in Collections: | 資訊工程學系 |
Files in This Item:
| File | Size | Format | |
|---|---|---|---|
| ntu-106-1.pdf Restricted Access | 1.65 MB | Adobe PDF |
Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.
