Languages and Compilers for Parallel Computing - 27th International Workshop, LCPC 2014, Hillsboro, OR, USA, September 15-17, 2014, Revised Selected Papers
Languages and Compilers for Parallel Computing - 27th International Workshop, LCPC 2014, Hillsboro, OR, USA, September 15-17, 2014, Revised Selected Papers
复制标题
并行计算的语言和编译器 - 第 27 届国际研讨会,LCPC 2014,美国俄勒冈州希尔斯伯勒,2014 年 9 月 15-17 日,修订后的精选论文
DOI:
10.1007/978-3-319-17473-0_14
复制
发表时间:
2015
期刊:
影响因子:
--
通讯作者:
Emani M
中科院分区:
文献类型:
--
作者:
Emani M
Parallel programs increasingly execute in highly dynamic environments where mapping program parallelism to dynamically varying system resources is challenging. Traditional offline compiler approaches exploit program knowledge but ignore the runtime environment. Online runtime approaches dynamically adapt to resources but ignore program structure. Furthermore, there is no mechanism to detect and improve the efficiency of these approaches during program execution. This paper develops a new runtime mapping approach based on online change detection. It models runtime scheduling of threads as a Markov Decision Process and exploits an offline trained model to predict the best thread mapping based on both code and environment features. It then develops a novel approach where the accuracy of an environment predictor is used as a measure of the model quality, adjusting thread mapping over time. On evaluating our scheme with varying external workloads and hardware availability, we achieve an average speedup improvement of 2.14x over the default OpenMP policy, 1.58x over an online approach and 1.32x over a state-of-the-art offline trained model.