首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到19条相似文献,搜索用时 203 毫秒
1.
并行程序设计是并行计算的难点之一。提出了一种将设计模式用于程序精化演算的并行程序设计方法。它通过在Z语言的Schema演算体系中扩充并行的概念和表示,使用设计模式,将问题求解和并行开发的知识进行形式化的定义与描述,通过扩充的Schema演算将其与模型规范进行复合,逐步精化得到抽象并行程序。通过实例对这一方法进行了详细的描述。  相似文献   

2.
孙敏  孙济洲  于策 《计算机工程与设计》2007,28(11):2513-2515,2523
并行结构骨架理论提供了一种描述并行程序设计模式的通用模型,对设计模式进行更高层次的抽象,能有效解决基于设计模式的并行程序设计方法的局限性问题,降低并行程序设计开发难度.基于并行结构骨架的并行程序设计环境--PASBPE在并行结构骨架理论的基础上,使用参数化设置快速生成用户所需并行程序框架,同时通过可视化的程序设计交互环境,简化并行程序的开发过程,提高开发效率.  相似文献   

3.
分枝限界算法是一种求解组合优化问题的一般性方法,并行化是提高算法性能的有效手段。文章使用[5]中提出的算法模式和结构模式的概念和思想设计并实现了一个并行分枝限界算法的产生器。该产生器通过提供并行分枝限界算法的抽象框架,将它应用于要求解的问题,可以得到问题的并行分枝限界算法。  相似文献   

4.
该文提出一个针对大型实对称正定稠密方程组或复对称非Hermitian稠密方程组线性求解器的并行分布式算法。它使用了不同于ScaLAPACK的J-变量块Cholesky分解算法和一维块循环列数据分配。该算法以MPI作为消息传递库,在最多可达16个处理器的集群上针对实对称正定稠密方程组可提供与ScaLAPACK近似的浮点操作性能,并可解决一些涉及复对称非Hermitian稠密方程组的电磁场散射问题。该算法的优点是执行Cholesky分解所需的存储量只是标准并行库ScaLAPACK的一半。仿真的数值结果表明该算法是正确、有效的。  相似文献   

5.
实现了风暴潮数值模式基于MPI的并行化;根据该模式数值计算的特点提出了一种并行求解三对角方程组的新方法,相对于传统算法编程简单而且并行效率更高;负载平衡是并行程序性能优化首先要解决的问题,以水格点的个数作为任务分解的标准,实现了较好的负载平衡,相比水陆格点不作区分的分解方法性能有明显的提高;在SMP平台上使用8个CPU时加速比可以达到7.0,在集群平台上为6.5。  相似文献   

6.
张哲 《微型机与应用》2012,31(10):85-88
对于使用支持NVIDACUDA程序设计模型的GPU的二维一层浅水系统,给出了如何加速平衡性良好的有限体积模式的数值解,同时给出并实现了在单双浮点精度下使用CUDA模型利用潜在数据并行的算法。数值实验表明,CUDA体系结构的求解程序比CPU并行实现求解程序高效。  相似文献   

7.
针对计算流体力学对高性能计算的需求,基于三维并行自适应有限元程序开发平台PHG (Par allel Hierarchical Grid)开发了在非结构四面体网格上求解可压缩流欧拉方程的间断有限元法并行求解器(Libdgphg库).该求解器以C++函数库的形式实现数值方法中各项功能.实施了模态基一次间断有限元,采用低耗散的MLP (Multi-dimensional Limiting Process)限制器来抑制间断附近的数值振荡.由于MLP限制器需要所有与当前单元共享顶点的邻近单元的信息,模板较宽,这给程序设计带来一定的困难.我们通过引入辅助向量收集共享顶点的所有单元中的最大、最小单元积分平均值,并归属到单元数据结构上,从而利用PHG内在的通信机制实现MPI分区间的信息交换.通过几个数值算例测试了 Libdgphg库的数值结果以及并行性能.算例表明:该求解器能得到理论精度阶和较高分辨率,同时有良好的并行性能,在千核测试中可达到60%以上的并行效率,可用于流体问题的大规模计算.  相似文献   

8.
基于改进的基因表达式编程的复杂函数建模   总被引:5,自引:0,他引:5       下载免费PDF全文
介绍了基因表达式程序设计方法的基本原理,针对求解复杂函数模型反问题中经典GEP算法多样性表现不足,甚至出现早熟的问题,提出了一种基于动态变异算子的改进的GEP算法——IGEP算法,从理论上对该改进算法进行了复杂度分析和收敛性分析。通过求解复杂函数模型反问题的多个实验将改进算法与传统方法、神经网络方法、经典GEP算法进行了对比,结果表明:该方法建立的复杂函数反问题拟合模型比经典GEP方法、传统方法、神经网络方法得到的模型更加优秀。  相似文献   

9.
基于CUDA的并行粒子群优化算法的设计与实现   总被引:1,自引:0,他引:1  
针对处理大量数据和求解大规模复杂问题时粒子群优化(PSO)算法计算时间过长的问题, 进行了在显卡(GPU)上实现细粒度并行粒子群算法的研究。通过对传统PSO算法的分析, 结合目前被广泛使用的基于GPU的并行计算技术, 设计实现了一种并行PSO方法。本方法的执行基于统一计算架构(CUDA), 使用大量的GPU线程并行处理各个粒子的搜索过程来加速整个粒子群的收敛速度。程序充分使用CUDA自带的各种数学计算库, 从而保证了程序的稳定性和易写性。通过对多个基准优化测试函数的求解证明, 相对于基于CPU的串行计算方法, 在求解收敛性一致的前提下, 基于CUDA架构的并行PSO求解方法可以取得高达90倍的计算加速比。  相似文献   

10.
非均匀区域油藏模拟负载平衡的分区并行算法*   总被引:1,自引:0,他引:1  
基于分布式并行计算机系统,对一类非均匀区域的油藏数值模拟问题,采用了区域分解方法并行求解,给出了并行求解的负载平衡模型及区域负载平衡的一种有效分区算法,从而将这类油藏数值模拟问题均衡映射到并行环境中,高效地并行求解.在黑油油藏数值模拟并行软件的研究中,实验结果表明,该算法有利于提高加速比.  相似文献   

11.
张德富  吴巧泉 《软件学报》1995,6(6):379-384
本文提出一种基于任务图的并行程序设计方法.首先分析欲解的问题,产生数据流程图,并以此设计出表示并行算法的任务图,然后根据任务图选择合适的系统拓扑结构,最后完成并行程序的设计.该方法思路清晰,富有条理,产生的并行程序质量较高.  相似文献   

12.
郭绚  郭平  郑守淇 《计算机学报》1999,22(6):591-595
介绍了一基于PVM并行环境的并行遗传算法的C++类库ParaGA的设计和实现,ParaGA以使用方便和灵活为主要目标,提供了透明的并行机制,使不具有并行程序经验的用户可以方便地编写并行遗传算法的程序,高级用户也可通过类库提供的若干方法来获得的优化的可行性能,类库采用粗粒度模型,支持并行遗传算法的3种迁移模式及SPMD和Master/Slave两种编程模式,ParaGA也提供了实现负载平衡分与及利用  相似文献   

13.
熊泽时 《微机发展》2010,(5):100-103,107
开发并行程序要比开发单机串行程序更难。PVM开发环境是应用比较广的环境之一,适合于开发粗粒度的工程科学计算并行程序,而这些工程计算问题一般是一些数值计算问题的集合。编写这些数值计算并行程序有一定的难度和复杂度,并且现在没有很好支持开发PVM并行程序的成熟开发环境。针对这个问题,构造一个基于PVM的并行程序开发环境。开发环境包括一个并行算法库和一个嵌入到Visual Studio的可视化程序开发插件。通过开发平台进行并行程序开发将更加简单、高效。  相似文献   

14.
在对现有并行编程方法研究的基础上,提出一种基于模式的CPPVM并行编程方法。介绍该方法中并行编程模式的设计与实现,以2个典型应用实例说明使用其进行问题的并行求解与并行程序开发的过程。该方法对于降低并行程序的开发难度,提高并行编程的可靠性与开发效率具有重要意义。  相似文献   

15.
HPMR在并行矩阵计算中的应用   总被引:2,自引:1,他引:2       下载免费PDF全文
为了解决传统并行编程难度大、效率低的问题,提出一种基于MapReduce模型的并行编程方法,在高性能MapReduce平台上实现矩阵并行LU分解。实验结果表明,相比传统并行编程模型,MapReduce模型并行程序可较好满足高性能数值计算需求,其编程简洁性和可读性能有效提升并行编程效率。  相似文献   

16.
基于模式的并行编程环境中任务队列模式的研究与实现   总被引:1,自引:0,他引:1  
并行程序的设计是并行计算的难点之一。本文在基于模式的并行编程方法的基础上,对一种典型的并行计算与通信模式-任务队列模式进行了深入的研究,并在基于模式的并行编程环境中对该模式进行了实现。本文将通过两个典型的应用实例说明在基于模式的并行编程环境中使用任务队列模式进行问题的并行求解与并行程序开发的过程,并从实现效率和可编程性方面对使用任务队列模式的并行程序和传统的MPI/PVM实现的并行程序进行了分析与比较。  相似文献   

17.
18.
We present a simple and easy to apply methodology for using high-level self-submitting parallel job queues in an MPI environment. Using C++, we implemented a library of functions, MPQueue, both for testing our concepts and for use in real applications. In particular, we have applied our ideas toward solving computational combinatorics problems and for finding bifurcation diagrams of solutions of partial differential equations (PDE). Our method is general and can be applied in many situations without a lot of programming effort. The key idea is that workers themselves can easily submit new jobs to the currently running job queue. Our applications involve complicated data structures, so we employ serialization to allow data to be effortlessly passed between nodes. Using our library, one can solve large problems in parallel without being an expert in MPI. We demonstrate our methodology and the features of the library with several example programs, and give some results from our current PDE research. We show that our techniques are efficient and effective via overhead and scaling experiments.  相似文献   

19.
Skeletal parallel programming is a promising approach to easy parallel programming in which users can build parallel programs simply by combining parts of a given set of ready-made parallel computation patterns called skeletons. There is a trade-off for this easiness in the form of an efficiency problem caused by the compositional style of the programming. One solution to this problem is fusion transformation that optimizes naively composed skeleton programs by eliminating redundant intermediate data structures. Several parallel skeleton libraries have automatic fusion mechanisms. However, there have been no automatic fusion mechanisms proposed for variable-length list (VLL) skeletons, even though such skeletons are useful for practical problems. The main difficulty is that previous fusion mechanisms are not applicable to VLL skeletons, and so the fusion cannot be completed. In this paper, we propose a novel fusion mechanism for VLL skeletons that can achieve both an easy programming interface and complete fusion. The proposed mechanism has been implemented in our skeleton library, SkeTo, by using the expression templates technique, experimental results have shown that it is very effective.  相似文献   

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

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