首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 203 毫秒
1.
蚁群算法的三种并行模型分析   总被引:1,自引:0,他引:1       下载免费PDF全文
王磊  曹菡  王长缨 《计算机工程》2011,37(12):170-172
在单机多核下分别构造基于OpenMP和MPI的并行蚁群算法模型,在多核集群机下构造基于MPI和MPI+OpenMP的并行蚁群算法模型,并提出动态蚁群择优策略及分段周期交流策略。基于实际路网的路径寻优问题对上述模型进行比较,实验结果表明,在单机多核下,基于MPI的模型与基于OpenMP的模型相比,运行时间短,加速比高,在多核集群机下,基于MPI+OpenMP的混合模型相比基于MPI的模型,在进程数较多时仍具有较高的加速比。  相似文献   

2.
OpenMP是现代多核机群系统采用的主要并行编程模型之一,在单CPU多核上可以获得良好的加速性能,但在整个机群系统上使用时,需要解决可扩展性差的问题.首先设计了求解非平衡动力学方程的并行算法.基于分布共享的多核机群系统,采用显式数据分布OpenMP并行计算方法,将数据进行分布式划分,分配到每个OpenMP线程,通过数据共享实现数据交换.计算结果表明显式OpenMP并行程序在保持可读性的同时,具有良好的可扩展性,在4核Xeon处理器构成的分布共享机群系统上,非平衡动力学方程组的数值并行计算可以扩展到1024个CPU核,具有明显的并行加速计算效果.  相似文献   

3.
使用Intel Parallel Amplifier高性能工具,针对模糊C均值聚类算法在多核平台的性能问题,找出串行程序的热点和并发性,提出并行化设计方案.基于Intel并行库TBB(线程构建模块)和OpenMP运行时库函数,对多核平台下的串行程序进行循环并行化和任务分配的并行化设计.  相似文献   

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.
采用多核技术。通过使用Win32API、OpenMP、MPI三种并行模式将求解非线性方程的蒙特卡洛方法的串行方法并行化,得到5种并行化方法。根据数值试验结果,对各种并行方法进行比较,发现Win32API并行模式计算速度最快,最终将结论加以推广。  相似文献   

7.
使用多核处理器已成为构建高性能计算机系统的主流方式。结合多核高性能计算机系统集共享内存结构和分布式内存结构于一体的体系结构特点,对AREM模式开展MPI/OpenMP混合并行计算研究与实现。性能测试结果表明,使用MPI/OpenMP混合并行计算可以将并行应用扩展至更大处理机规模,缩短计算时间,不对原程序结构做大的改动、以增量方式和较小的并行化代价,取得比较好的并行计算效果。  相似文献   

8.
波动方程数值模拟普遍存在计算量大的问题,如何根据波动方程有限差分方法的特点开展并行化方法研究是适应微机多核发展的必然趋势。结合波动方程数值模拟中的多层循环嵌套问题和OpenMP的特点,通过确定循环体并行顺序、减少串行环节、合并循环体、准确设置制导语句以及线程绑定优化等方法有助于实现微机多核的高效并行。针对波动方程特点的多核并行不仅有助于提高单机计算效率,对于提高计算机集群上常用的MPI+OpenMP混合并行效率也具有重要意义。  相似文献   

9.
分析了并行关联规则挖掘算法存在的不足,提出了一种改进的关联规则挖掘的多核并行优化算法。该算法对Apriori算法的压缩矩阵进行了改造,并在多核平台下利用OpenMP技术和TBB技术对串行程序进行循环并行化和任务分配的并行化设计,最大限度地实现并行关联规则挖掘。  相似文献   

10.
多核并行技术在三维场景加载中的应用   总被引:1,自引:0,他引:1       下载免费PDF全文
李喆  郑晓薇 《计算机工程》2011,37(6):245-246
研究一种用于三维漫游场景的多核并行加载系统。在多核计算机上采用OGRE进行场景加载,利用OpenMP实现多线程创建与同步,动态设置并行程序的线程数量。通过对一个三维山地漫游场景加载不同数量植物的实例,测试出不同线程下并行加载Mesh的时间,获得较好的加速比。实验结果表明,采用OpenMP并行技术可有效改进三维漫游场景的加载速率,加快地形场景的显示,提高绘制效率。  相似文献   

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.
范汉青  陆达  朱喜娜 《微机发展》2010,(5):139-141,166
随着多核技术的发展,多核计算机逐渐成为市场的主流,由此对程序设计带来了巨大的改变。如何以最少的代价将现有的代码修改成适应多核计算机的程序,已经成为一个重要的课题。从电能质量分析中最重要的谐波检测入手,对谐波检测中利用的傅里叶变换算法进行分析,证明了傅里叶变换结果和谐波的关系,介绍了几种谐波分析的算法,给出了利用OpenMP编程技术对基于复序列的傅里叶变换算法进行并行化改造的过程,并对并行化的效率进行了分析。实验表明OpenMP对少量数据的运算效果不是十分理想,比较适合于大数据量的并行运算,同时并行的粒度越大,效果越好。  相似文献   

16.
随着多核技术的发展,多核计算机逐渐成为市场的主流,由此对程序设计带来了巨大的改变.如何以最少的代价将现有的代码修改成适应多核计算机的程序,已经成为一个重要的课题.从电能质量分析中最重要的谐波检测入手,对谐波检测中利用的傅里叶变换算法进行分析,证明了傅里叶变换结果和谐波的关系,介绍了几种谐波分析的算法,给出了利用OpenMP编程技术对基于复序列的傅里叶变换算法进行并行化改造的过程,并对并行化的效率进行了分析.实验表明OpenMP对少量数据的运算效果不是十分理想,比较适合于大数据量的并行运算,同时并行的粒度越大,效果越好.  相似文献   

17.
为了达到提高颗粒流体动力学方法 GHM计算效率的目标,分析了GHM模型的主要计算模块,抽取其中的可并行计算模块,基于多核计算机的硬件环境,应用OpenMP多线程并行计算模型,对采用数值积分方法求解颗粒运动方程的部分,实现求解过程的并行计算。最后通过多次实验验证程序的正确性及算法性能。实验结果表明,在Windows 7系统4核8线程处理器的计算机上,并行程序的并行加速比最高达到了2.5,说明OpenMP多核并行技术能较显著地提高GHM方法的计算性能。  相似文献   

18.
多核并行技术在分子动力学模拟中的应用   总被引:1,自引:0,他引:1  
为了充分利用多核处理器资源,研究了一种用于分子动力学模拟中的多核并行技术。在多核处理器上利用OpenMP技术实现多线程创建与同步、动态设置子线程的调度运行方式以及负载均衡以减少子线程执行等待时间。通过对不同分子体系结构下的动力学模型测试,得出在不同子线程下并行计算的时间,并且得到了良好的性能加速比。实验结果表明,采用OpenMP并行技术可有效地提高电荷求解过程在分子动力学模拟运算中的时间效率,以及多核计算机资源的利用率。  相似文献   

19.
王竹荣  巨涛  马凡 《计算机科学》2011,38(7):194-199
为应对传统遗传算法在处理大规模组合优化问题面临的进化速度缓慢,难以达到实时要求的严峻挑战,提出了一种在多核PC集群系统上实现“粗粒度一主从式”混合并行遗传算法的模型:通过把“粗粒度一主从式”并行遗传算法映射到多核PC集群上,结合消息传递和共享存储两种并行编程模型,在节点间使用消息传递模型(MPI),对应的遗传算法为粗粒度并行遗传算法,在节点内使用共享存储模型(OpcnMP),对应的遗传算法为主从式并行遗传算法,用MPI和OpenMP混合编程的方式以进程和线程两级并行在多核集群上实现具体的混合并行遗传算法。理论分析和实验结果表明,提出的实现模型有较好的性能,可大大改进传统遗传算法的缺陷。为利用并行遗传算法在普通多核PC集群上处理大规模组合优化问题提出了一种有效、可行的解决方案。  相似文献   

20.
多核技术的问世,使得人们在桌面计算机环境下研究并行算法,运行并行程序成为可能。与此同时,如何充分利用多核技术进行并行程序设计却是所面临的巨大挑战。在叙述了多核技术,并将其与超线程技术比较后,介绍了Windows环境下的常用的多核编程工具OpenMP,并重点描述了并行语句Fork/Join;在简述了信号处理中常用的FFT后,重点分析了FFT的按时间基2抽取形式,并据此利用OpenMP设计了一个n核环境下的FFT并行算法,通过对相应程序的运行,结果表明,该算法加速比接近n。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号