共查询到20条相似文献,搜索用时 203 毫秒
1.
2.
OpenMP是现代多核机群系统采用的主要并行编程模型之一,在单CPU多核上可以获得良好的加速性能,但在整个机群系统上使用时,需要解决可扩展性差的问题.首先设计了求解非平衡动力学方程的并行算法.基于分布共享的多核机群系统,采用显式数据分布OpenMP并行计算方法,将数据进行分布式划分,分配到每个OpenMP线程,通过数据共享实现数据交换.计算结果表明显式OpenMP并行程序在保持可读性的同时,具有良好的可扩展性,在4核Xeon处理器构成的分布共享机群系统上,非平衡动力学方程组的数值并行计算可以扩展到1024个CPU核,具有明显的并行加速计算效果. 相似文献
3.
4.
在神威高性能多核服务器上,自动并行化编译系统为识别和申明程序中的并行性,产生的OpenMP程序没有经过充分的优化,其采用简单的fork-join模型,存在大量的并行循环嵌套,导致运行效率低。为提升自动并行化编译系统产生的OpenMP程序的运行效率,提出一种并行域重构优化技术。并行域重构技术通过合并程序中的并行域和扩展嵌套循环中的并行域范围,减少OpenMP程序的并行域数目,降低线程组频繁创建和合并等控制开销,将简单fork-join模型的OpenMP程序转换为性能更为高效的单程序多数据模型的OpenMP程序。实验结果表明,在新一代神威高性能多核服务器SW1621平台上,并行域重构技术在NPB3.3-OMP测试集和SPEC OMP2012测试集上的运行效率分别提高了10.77%和7.94%的,可有效提升自动并行化编译系统OpenMP程序的执行效率。 相似文献
5.
为多核平台开发一种有效的编程方法已经成为并行软件研究的一个重要目标.在嵌入式多核平台上进行了OpenMP并行程序的有效的实施运行.针对嵌入式具有有限内存资源的特点,提出了通过扩展OpenMP自定义制导语句tiling来提高并行程序在嵌入式多核平台上的运行效率.扩展后的OpenMP并行程序支持循环分片,从而能够充分利用层... 相似文献
6.
7.
使用多核处理器已成为构建高性能计算机系统的主流方式。结合多核高性能计算机系统集共享内存结构和分布式内存结构于一体的体系结构特点,对AREM模式开展MPI/OpenMP混合并行计算研究与实现。性能测试结果表明,使用MPI/OpenMP混合并行计算可以将并行应用扩展至更大处理机规模,缩短计算时间,不对原程序结构做大的改动、以增量方式和较小的并行化代价,取得比较好的并行计算效果。 相似文献
8.
曹丹平 《计算机工程与应用》2012,48(36):9-13
波动方程数值模拟普遍存在计算量大的问题,如何根据波动方程有限差分方法的特点开展并行化方法研究是适应微机多核发展的必然趋势。结合波动方程数值模拟中的多层循环嵌套问题和OpenMP的特点,通过确定循环体并行顺序、减少串行环节、合并循环体、准确设置制导语句以及线程绑定优化等方法有助于实现微机多核的高效并行。针对波动方程特点的多核并行不仅有助于提高单机计算效率,对于提高计算机集群上常用的MPI+OpenMP混合并行效率也具有重要意义。 相似文献
9.
10.
11.
主流通用处理器都已经实现了多核并行以及处理器核内的SIMD并行。虽然GCC编译器实现了面向SIMD并行的自动向量化,但是编译器针对OpenMP并行程序的自动向量化效果仍很不理想。针对多线程并行的OpenMP程序,基于GCC的OpenMP编译实现,扩展了数据对齐属性指导语句,使编译器在自动向量化时能够进行更准确的数据对齐与否的判断,优化了GCC编译器的自动向量化。 相似文献
12.
研究了多核计算机上0penMP+Vc++编程模式的并行程序,并在双核和四核计算机上分别使用传统算法和并行算法计算数列求和、矩阵乘积及矩阵Cholesky分解。试验表明,传统串行程序只能利用多核计算机的一个核资源,而采用OpenMP程序的并行效率很高。 相似文献
13.
多核处理器能够提升多线程程序的性能,但早已存在的诸多单线程程序无法从中获益,程序员也习惯于编写单线程程序.自动并行化技术是将单线程程序移植到多核上的重要手段,但是当循环中存在无法确定的数据依赖或复杂的控制流时,传统的自动并行化技术无法取得良好效果.Ottoni等人针对传统自动并行失败的循环提出了Decoupled Software Pipelining(DSWP)算法用以实现指令级的细粒度并行,但其需要对处理器体系结构的深入了解以及对核间通信队列和专用指令的硬件支持,并行性能和应用广泛性受到限制.基于OpenMP应用编程接口实现的DSWP并行不依赖于硬件上对核间通信队列和专用指令的支持,且不受平台的限制,但现有的OpenMP任务调度机制无法满足DSWP并行中对任务调度的需求.对现有的OpenMP任务调度机制进行扩展,增加了任务与线程绑定的属性,保证了基于OpenMP的DSWP并行程序的正确执行.在GCC的OpenMP运行库libgomp中扩展了任务绑定属性子句的功能,扩展后的GCC作为OpenMP DSWP程序的基础编译器,为自动并行提供支持.通过对基准测试集NPB3.3.1的测试表明,传统自动并行失败的循环,经OpenMP DSWP自动并行后在双核处理器上平均加速比达到1.23以上;使用添加了OpenMP DSWP算法的Open64编译器生成的并行程序,与仅使用传统自动并行方法的Intel 编译器和Open64编译器所得程序相比,平均加速比分别高出22%和26%. 相似文献
14.
针对大多数并行Delaunay网格生成算法无法充分利用多核共享内存结构的问题,在原有面向共享内存的二维并行算法基础上,根据三维问题的特点提出基于OpenMP的三维并行Delaunay网格生成算法。算法采用划分求解区域为方格的方法实现候选点集的划分和并行插点。使用OpenMP对算法进行实现,并利用多种实现技术避免线程间的同步等待,提升算法效率。实验结果表明,本文算法及所采用的实现技术可以在三维条件下快速生成大量网格单元,具有较高的并行效率,同时能够保证良好的网格质量。 相似文献
15.
随着多核技术的发展,多核计算机逐渐成为市场的主流,由此对程序设计带来了巨大的改变。如何以最少的代价将现有的代码修改成适应多核计算机的程序,已经成为一个重要的课题。从电能质量分析中最重要的谐波检测入手,对谐波检测中利用的傅里叶变换算法进行分析,证明了傅里叶变换结果和谐波的关系,介绍了几种谐波分析的算法,给出了利用OpenMP编程技术对基于复序列的傅里叶变换算法进行并行化改造的过程,并对并行化的效率进行了分析。实验表明OpenMP对少量数据的运算效果不是十分理想,比较适合于大数据量的并行运算,同时并行的粒度越大,效果越好。 相似文献
16.
随着多核技术的发展,多核计算机逐渐成为市场的主流,由此对程序设计带来了巨大的改变.如何以最少的代价将现有的代码修改成适应多核计算机的程序,已经成为一个重要的课题.从电能质量分析中最重要的谐波检测入手,对谐波检测中利用的傅里叶变换算法进行分析,证明了傅里叶变换结果和谐波的关系,介绍了几种谐波分析的算法,给出了利用OpenMP编程技术对基于复序列的傅里叶变换算法进行并行化改造的过程,并对并行化的效率进行了分析.实验表明OpenMP对少量数据的运算效果不是十分理想,比较适合于大数据量的并行运算,同时并行的粒度越大,效果越好. 相似文献
17.
为了达到提高颗粒流体动力学方法 GHM计算效率的目标,分析了GHM模型的主要计算模块,抽取其中的可并行计算模块,基于多核计算机的硬件环境,应用OpenMP多线程并行计算模型,对采用数值积分方法求解颗粒运动方程的部分,实现求解过程的并行计算。最后通过多次实验验证程序的正确性及算法性能。实验结果表明,在Windows 7系统4核8线程处理器的计算机上,并行程序的并行加速比最高达到了2.5,说明OpenMP多核并行技术能较显著地提高GHM方法的计算性能。 相似文献
18.
多核并行技术在分子动力学模拟中的应用 总被引:1,自引:0,他引:1
为了充分利用多核处理器资源,研究了一种用于分子动力学模拟中的多核并行技术。在多核处理器上利用OpenMP技术实现多线程创建与同步、动态设置子线程的调度运行方式以及负载均衡以减少子线程执行等待时间。通过对不同分子体系结构下的动力学模型测试,得出在不同子线程下并行计算的时间,并且得到了良好的性能加速比。实验结果表明,采用OpenMP并行技术可有效地提高电荷求解过程在分子动力学模拟运算中的时间效率,以及多核计算机资源的利用率。 相似文献
19.
为应对传统遗传算法在处理大规模组合优化问题面临的进化速度缓慢,难以达到实时要求的严峻挑战,提出了一种在多核PC集群系统上实现“粗粒度一主从式”混合并行遗传算法的模型:通过把“粗粒度一主从式”并行遗传算法映射到多核PC集群上,结合消息传递和共享存储两种并行编程模型,在节点间使用消息传递模型(MPI),对应的遗传算法为粗粒度并行遗传算法,在节点内使用共享存储模型(OpcnMP),对应的遗传算法为主从式并行遗传算法,用MPI和OpenMP混合编程的方式以进程和线程两级并行在多核集群上实现具体的混合并行遗传算法。理论分析和实验结果表明,提出的实现模型有较好的性能,可大大改进传统遗传算法的缺陷。为利用并行遗传算法在普通多核PC集群上处理大规模组合优化问题提出了一种有效、可行的解决方案。 相似文献
20.
多核技术的问世,使得人们在桌面计算机环境下研究并行算法,运行并行程序成为可能。与此同时,如何充分利用多核技术进行并行程序设计却是所面临的巨大挑战。在叙述了多核技术,并将其与超线程技术比较后,介绍了Windows环境下的常用的多核编程工具OpenMP,并重点描述了并行语句Fork/Join;在简述了信号处理中常用的FFT后,重点分析了FFT的按时间基2抽取形式,并据此利用OpenMP设计了一个n核环境下的FFT并行算法,通过对相应程序的运行,结果表明,该算法加速比接近n。 相似文献