OpenMP多线程负载均衡分析方法及调度策略研究

被引:0
作者
唐玲
机构
[1] 湖南大学
关键词
多核技术; OpenMP; 负载均衡; 调度策略; OMPi;
D O I
暂无
年度学位
2010
学位类型
硕士
导师
摘要
多核技术作为提高处理器性能的一个有效可行的方法,不仅在科学领域中产生了推动作用,也给人们的生活带来了方便。纵观当今市场上的PC机、服务器、笔记本电脑,多核已逐渐成为趋势。多核在带来巨大处理潜力的同时,对软件方面提出了巨大的挑战,原有的串行编程模式已不再适应,需要向并行编程模式转变。其中,OpenMP能够为具有统一地址空间的并行系统提供可移植、可扩展的开发接口。但是,使用并行编程模式编写的并行程序同样具有使用串行编程模式编写串行程序时所要面临的性能影响问题。负载均衡就是影响并行程序运行性能的主要因素之一。为了精确分析负载均衡,缓解程序所表现的负载不均衡性,以提高程序运行性能,本文主要对OpenMP多线程负载均衡分析方法以及调度策略展开讨论和研究。 本文首先讨论和分析了多核技术的发展及其对软件业所产生的影响;总结和归纳了OpenMP相关研究,包括并行效率和性能的分析与改进、多线程之间的锁同步与竞争、多核编程中的负载均衡以及OpenMP的模型扩展与改进;同时,对支持OpenMP的OMPi编译器以及并行化程序的重要对象循环结构进行了介绍。 其次,为了精确分析并行程序所表现的负载均衡问题,优化性能分析流程,本文确定了负载均衡分析单元,度量了负载不均衡程度以及潜在的并行调整效率,并提出了一种以负载均衡分析单元为分析对象来监测、分析、调整OpenMP多线程程序负载均衡的方法。通过实验表明该方法是可行的、有效的。 最后,考虑到并行程序中并行任务是依据调度策略来实现负载的分配,为了在调度开销与负载均衡之间获得更好的权衡,本文提出将trapezoid梯式调度策略在开源的、支持OpenMP的OMPi编译器进行实现,以提高OpenMP多线程程序的运行性能。实验结果表明:梯式调度策略在递减以及某些极不规则的循环结构中,在适当的线程数下,与指数调度相比,该调度策略能表现出更好的性能。
引用
收藏
页数:68
共 16 条
[1]
An efficient synchronization model for OpenMP [J].
Garcia Lopez, F. C. ;
Frias Arrocha, N. L. .
JOURNAL OF PARALLEL AND DISTRIBUTED COMPUTING, 2006, 66 (11) :1359-1365
[2]
Load balancing and OpenMP implementation of nested parallelism.[J]..Parallel Computing.2005, 10
[3]
Design and Prototype of a Performance Tool Interface for OpenMP..[J].Bernd Mohr;Allen D. Malony;Sameer Shende;Felix Wolf.The Journal of Supercomputing.2002, 1
[4]
FACTORING - A METHOD FOR SCHEDULING PARALLEL LOOPS [J].
HUMMEL, SF ;
SCHONBERG, E ;
FLYNN, LE .
COMMUNICATIONS OF THE ACM, 1992, 35 (08) :90-101
[5]
Reevaluating Amdahl's law.[J].John L. Gustafson.Communications of the ACM.1988, 5
[6]
基于插桩技术的并行程序性能分析方法设计和实现 [J].
马桂杰 ;
蒋昌俊 ;
刘吟 ;
王忱 .
计算机应用研究, 2007, (10) :225-228
[7]
OpenMP Fortran程序中死锁的静态检测 [J].
王昭飞 ;
黄春 .
计算机研究与发展, 2007, (03) :536-543
[8]
一种基于POMP的OpenMP程序负载均衡分析方法 [J].
殷顺昌 ;
赵克佳 .
计算机工程与应用, 2006, (35) :84-87
[9]
OpenMP任务调度开销及负载均衡分析 [J].
赖建新 ;
胡长军 ;
赵宇迪 ;
王生原 ;
张素琴 .
计算机工程, 2006, (18) :58-60
[10]
一种并行程序性能工具的研究与实现 [J].
彭超 ;
陈华蓉 .
微计算机信息, 2006, (06) :220-221+9