首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 281 毫秒
1.
高效的并行有限差分Stencil 算法对于求解大型线性方程组是十分重要的.针对并行有限差分Stencil 算法中数据局部性差、同步和通信开销大的问题.首先改进传统有限差分Stencil 算法,提出了多层对称遍历有限差分Stencil 算法.然后给出了以迭代空间条块序作为执行序的串行算法,通过沿时间轴对迭代空间进行时滞划分,在不改变迭代算法性质的同时,对迭代空间条块内部多次迭代计算,提高算法的数据局部性.最后提出一种基于迭代空间条块的并行算法,该算法利用改进的多面体模型对迭代空间网格划分,并通过网格条块重排序减少了Cache 缺失率、通信启动和同步次数.理论分析和实验结果表明,该并行模型比传统的区域分解方法和红黑排序并行算法具有更好的数据局部性,并行效率和可扩展性.  相似文献   

2.
Jacobi迭代算法是解线性方程组的最常用的方法,具有广泛的应用。Jacobi迭代属于计算密集型[1],将并行计算技术应用到Jacobi迭代中,具有重要的意义。通过使用消息传递编程模型mpi提供的向量数据类型和虚拟进程拓扑来实现Jacobi迭代的并行化。  相似文献   

3.
Jacobi迭代算法是解线性方程组的最常用的方法,具有广泛的应用。Jacobi迭代属于计算密集型[1],将并行计算技术应用到Jacobi迭代中,具有重要的意义。通过使用消息传递编程模型mpi提供的向量数据类型和虚拟进程拓扑来实现Jacobi迭代的并行化。  相似文献   

4.
逐次超松弛迭代方法被广泛应用于油藏数值模拟中压力方程的求解.其并行实现是提高模拟速度的重要途径.传统并行方案大都只是在一次迭代内进行数据划分,而没有进一步将数据划分与迭代空间划分相结合,故针对SOR算法和SMP(symmetric multi-processors)系统的特点,以OpenMP为并行化实现工具,提出了基于SMP的并行逐次超松弛迭代方法(parallelSOR).方法通过改变不同迭代步内数据点的更新次序,使不同区域内的数据点可以并行执行多次迭代.总结出针对三维油藏区域在数据空间划分和迭代空间合并上相对较优的策略,分析了迭代过程中网格块的生长形状.与传统的并行策略相比,该方法具有可减小同步开销、改进数据局部性、cache命中率高等优点.实验结果表明,该方法具有较高的加速比和效率.  相似文献   

5.
解大规模线性方程组的Mann迭代并行算法   总被引:1,自引:0,他引:1  
利用实函数不动点的Mann迭代算法,提出了一种求解大规模线性方程组新的并行算法,分析了算法的并行加速比,讨论了算法在基于消息传递机制的MPI并行环境下的实现流程,给出了并行环境上的实验.该算法适用范围广,数值计算结果表明理论分析与实际计算相符合,算法在并行环境下具有较好的并行度,可适合大规模科学与工程的高性能计算.  相似文献   

6.
迭代空间交错条块并行Gauss-Seidel算法   总被引:1,自引:0,他引:1  
胡长军  张纪林  王珏  李建江 《软件学报》2008,19(6):1274-1282
针对并行GS(Gauss-Seidel)迭代算法中数据局部性差、同步和通信开销大的问题,首先改进传统GS迭代,提出了多层对称GS迭代算法.然后给出了以迭代空间条块序作为执行序的串行执行模型.该模型通过对迭代空间进行"时滞"划分,对迭代空间条块内部多次迭代计算,提高算法的数据局部性.最后提出一种基于迭代空间条块的并行执行模型.该模型改进了迭代空间网格划分,并通过网格条块重排序减少了cache缺失率、通信启动和同步次数.实验结果表明,迭代空间交错条块并行算法比传统的区域分解方法和红黑排序并行算法具有更好的并行效率和可扩展性.  相似文献   

7.
利用U模变换增加并行粒度与改善数据访问局部性的方法   总被引:3,自引:0,他引:3  
提出了一种利用循环变换增加循环并行粒度,改善循环数据访问局部性的方法,该方法利用了给定二重循环的相关向量集的某些性质,将外层循环变量不同而内层循环变量相等的若干次迭代合并,成为折叠后迭代空间的一个结点,并且保持内层循环的并行性不变,从而达到增加循环并行粒度的目的。对于更普遍的情况,该文讨论了如何根据给定循环的循环向量集,确定一个U模变换对迭代空间进行变换,达到内层循环可并行和扩大循环粒度两个目的,针对循环变换中数据访问局部性可能变差的问题,该文提出了对内层循环先合并,根据合并后的相关向量集变换迭代空间,以及折叠迭代空间的方法,该文的方法是Wavefront循环并行化方法的一种扩展。  相似文献   

8.
流编程模型是一种近年来被广泛研究的并行编程模型,它在基于软件管理的流式存储器,如流寄存器文件的流体系结构上得到了良好的应用.但同时也有研究指出流编程模型同样适合于基于硬件管理的一致性cache的体系结构.流编程模型目前最重要的应用背景GPGPU在发展中也逐渐引入通用的数据cache,因此发掘流程序的cache局部性就成为在这类体系结构上提高流程序性能的关键.由于流程序特殊的执行模型,其重用向局部性转化的过程与传统的串行程序不一致,无法直接使用传统的局部性分析方法直接对流程序进行分析.在深入分析了重用向局部性转化过程的基础上,提出了"迭代序"的概念用于描述流和串行程序重用向局部性转化时的不同,同时结合流程序的执行特点面向并行扩展了传统的局部性分析理论,给出了基于迭代序的局部性分析方法.此外,结合局部性分析模型还提出了两种流程序的cache局部性优化方法.在GPGPUSim模拟平台上进行的验证结果表明对流程序局部性的定量分析是有效的,并且提出的优化方法也可以有效改善流程序的cache局部性,提高流程序的性能.  相似文献   

9.
PC机群上共享存储与消息传递的比较   总被引:7,自引:0,他引:7       下载免费PDF全文
共享存储和消息传递是目前两种主流的并行编程模型.一般认为,消息传递的可编程性不及共享存储友好.OpenMP是目前共享存储编程的实际工业标准.机群OpenMP系统在机群上提供了OpenMP编程环境,具有易编程和可扩展的特点,但是其性能如何一直是关注的热点.以机群OpenMP系统OpenMP/JIAJIA和典型的消息传递系  相似文献   

10.
基于消息传递的LDPC码硬判决解码算法建模   总被引:1,自引:0,他引:1  
提出了一种以奇偶校验和作为消息传递的LDPC码硬判决的解码方案.该方案以奇偶校验方程是否满足约束为条件,从而决定接收分组中的错误位,并对错误位进行翻转.分析了迭代消息流传递机制和迭代解码过程,最后提出一种具体可实现的解码算法模型。  相似文献   

11.
MPI(Message Passing Interface)是消息传递并行程序设计的标准之一,概述了MPI的概念和组成,着重介绍了支持并行程序设计的消息传递接口(MPI)以及在MPI环境下的并行程序设计方法,并给出一个MPI并行程序设计实例,说明了MPI的程序设计流程和普通串行程序设计之间的关联。  相似文献   

12.
To ease the programming burden and to make parallel programs more maintainable, computational scientists and engineers currently have the options to use software libraries, templates, and general purpose language extensions to compose their application programs. These existing options, unfortunately, have considerable limitations with compatibility, expressive power and delivered performance. To address these issues, we design a domain specific language, GridFOR, for computational problems defined over regular geometric grids. This language allows the programmer to first implement an algorithm on simple data structures, as commonly illustrated in textbooks or papers. The programmer then specifies transformations to extend the algorithm for complex data structures required by the target applications. We build a compiler to automatically translate a GridFOR program to a parallel Fortran version with Message Passing Interface calls. Several optimization techniques are implemented in our compiler to enhance the program speed.  相似文献   

13.
Pure data-parallel languages such as High Performance Fortran version 1 (HPF) do not allow efficient expression of mixed task/data-parallel computations or the coupling of separately compiled data-parallel modules. In this paper, we show how these common parallel program structures can be represented, with only minor extensions to the HPF model, by using a coordination library based on the Message Passing Interface (MPI). This library allows data-parallel tasks to exchange distributed data structures using calls to simple communication functions. We present microbenchmark results that characterize the performance of this library and that quantify the impact of optimizations that allow reuse of communication schedules in common situations. In addition, results from two-dimensional FFT, convolution, and multiblock programs demonstrate that the HPF/MPI library can provide performance superior to that of pure HPF. We conclude that this synergistic combination of two parallel programming standards represents a useful approach to task parallelism in a data-parallel framework, increasing the range of problems addressable in HPF without requiring complex compiler technology.  相似文献   

14.
Message Passing (MP) and Distributed Shared Memory (DSM) are the two most common approaches to distributed parallel computing. MP is difficult to use, whereas DSM is not scalable. Performance scalability and ease of programming can be achieved at the same time by using navigational programming (NavP). This approach combines the advantages of MP and DSM, and it balances convenience and flexibility. Similar to MP, NavP suggests to its programmers the principle of pivot-computes and hence is efficient and scalable. Like DSM, NavP supports incremental parallelization and shared variable programming and is therefore easy to use. The implementation and performance analysis of real-world algorithms, namely parallel Jacobi iteration and parallel Cholesky factorization, presented in this paper supports the claim that the NavP approach is better suited for general-purpose parallel distributed programming than either MP or DSM.  相似文献   

15.
Skeletal parallel programming enables programmers to build a parallel program from ready-made components (parallel primitives) for which efficient implementations are known to exist, making both the parallel program development and the parallelization process easier. Constructing efficient parallel programs is often difficult, however, due to difficulties in selecting a proper combination of parallel primitives and in implementing this combination without having unnecessary creations and exchanges of data among parallel primitives and processors. To overcome these difficulties, we propose a powerful and general parallel skeleton, accumulate, which can be used to naturally code efficient solutions to problems as well as be efficiently implemented in parallel using Message Passing Interface (MPI).  相似文献   

16.
有限差分法是求解偏微分方程近似解的一种重要的数值方法。并行化计算可提高复杂计算问题的效率,二维场中拉普拉斯方程的差分格式非常适合并行化方法的计算。如何将串行部分并行化以提高大规模计算的效率,MPI(消息传递接口)是实现并行程序设计的标准之一。虚拟进程(MPI_PROC_NULL)是MPI中的假想进程,它的引用可简化MPI编程中的通信部分,引入虚拟进程编写代码,可实现有限差分方法的并行化计算。  相似文献   

17.
生物复杂网络motif发现是一种研究生物网络的重要方法,它基于复杂网络的理论研究,以新的视角来研究生命现象和生命机制,但是在处理较大的网络规模或者需挖掘较大的motif时计算效率低。针对这个问题,在现有串行网络motif发现算法ESU的基础上,提出一种基于消息传递接口(MPI)的并行化ESU算法。该方法在ESU计算过程中优化了节点值以解决节点值依赖问题,并以ESU算法的子图发现策略统计各节点子图数,利用动态规划策略寻找最佳节点分配策略以解决负载不均衡问题。模拟网络数据和真实生物网络数据的实验结果表明,并行化ESU算法优化了节点值依赖问题,实现了基于动态规划的负载均衡策略,其运行时间比串行算法缩短了90%,并且该并行算法对不同类型不同规模的网络都具有较强的适用性,有效地提高了网络motif发现问题的计算效率。  相似文献   

18.
基于消息传递接口(Message Passing Interface,MPI)和消息传递并行编程模型,提出了一种针对计算机集群(Cluster)的纹理图像并行分割算法。该算法使用马尔可夫随机场作为纹理特征,通过将图像分块,把特征提取的计算量均匀的分布到并行系统中的各个节点上,从而极大地减少了计算时间。在遥感图像上的实验发现,该算法在4机并行的环境下可以取得与单机串行程序一样精确的分割,而耗时仅为串行程序的31.95%。令人满意的实验结果表明该并行算法不但可以有效的应用于纹理图像分割,而且也为使用计算机集群实现高时间复杂度的图像处理提供了有益的启示。  相似文献   

19.
穆艳玲 《数字社区&智能家居》2009,5(4):2652-2653,2658
该文对串行遗传算法进行了并行设计,加入对当前通用消息传递接口MPI的支持,形成了一个主从式并行遗传算法。针对该算法用经典的测遗传算法效率的OliverTSP问题进行测试,得出并行遗传算法可以更好的提高遗传算法的收敛性。  相似文献   

20.
并行k均值聚类算法的完备性证明与实现   总被引:1,自引:0,他引:1  
对经典k均值算法进行分析,证明如何在减少节点间通信代价的情况下,从局部聚类信息生成完备的全局聚类信息,使聚类质量等价于相应串行算法,并具有较高的执行效率,在此基础上给出可信的基于消息传递接口的并行k均值算法。实验结果表明,该算法是高效的和可行的。  相似文献   

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

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