基于前期工作的EOSS算法,给出了扩展条件下的OpenMP静态调度能量优化算法一一改进的能量最优OpenMP静态调度算"~-(improvedenergy-optimalstaticscheduling,简称IEOSS).该算法在原有EOSS算法的基础上,建模了数据cache失效造成的访存延迟对并行循环性能及能量的影响,选择最优调度块大小,,同时结合动态电压/频率调节,获得最小能量消耗.选择NPB3.2.OMP的5个程序进行模拟,以480个处理器、64字节大小的cacheline为例,在5%的性能损失条件下,对比OpenMP缺省的块调度的能量消耗,IEOSS算法可使EP,IS,FT,CG~MG程序的并行循环能量消耗分别减少10.15%,4.49%,81.66%,2.32%和10.11%.实验结果验证了算法IEOSS通过DVS结合最优块大小的选择。能够明显改进能量优化效果.t
This paper presents expanded hypothesis based OpenMP static scheduling energy optimization algorithm--Improved Energy-Optimal OpenMP Static Scheduling, IEOSS. Based on EOSS algorithm, IEOSS algorithm exploits the impact of memory access latency on performance and energy of parallel loop. Due to cache miss, the optimal chunk S* scales down processors' voltage/frequency and obtains the minimal energy consumption. Five programs from NPB3.2-OMP for further evaluation. Take 480 processors, 64-byte cache line as an example: with 5% performance loss, IEOSS algorithm improves the energy savings of EP, IS, FT, CG, MG by 10.15%, 4.49%, 81.66%, 2.32%, 10.11% compared with energy consumption of OpenMP chunk scheduling. This shows that IEOSS can effectively improve energy optimization by combining DVS with choosing optimal chunk size.