论文部分内容阅读
随着科技的发展,尤其是计算机技术的发展,各个行业中的数据量都开始呈指数型增长,传统的串行计算能力,已经远远不能满足日益增长的数据处理需求。在这种背景下,并行计算技术应运而生,其主要目的是快速解决大型且复杂的计算问题。并行计算不仅和国家的科技和经济发展密切相关,而且直接影响到国防能力和国家安全,如核爆炸模拟,复杂系统精确解算、基因研究和国家机要通信的加密与解密等等。并行计算能力是衡量国家实力的重要标志。虽然并行计算已发展多年,在一些具体问题的解决上也已经有了较为实用的方案,总结了相当多的经验,但还远远不及串行算法那样丰富,因此这门学科研究尚不成熟。并行算法与串行算法的最大不同之处在于,不仅需要考虑问题本身的解决方法,还需要考虑问题所适用的并行模型,若要达到效率最大化,还需要考虑处理器架构、网络连接等因素,这必然会增加并行算法的设计和实现难度。本论文在分析了并行计算中的各种难题以及国内外研究现状的基础上,针对并行计算模型的种种难题,提出了一种新的满足多核处理器机群计算需求的分层异构并行的通用计算模型,并对其中的关键技术做了初步研究,具体内容如下:(1)提出了一种新的满足多核处理器机群计算需求的分层异构并行的通用计算模型,该模型将目标问题的开发划分为程序模型算法设计、并行程序设计、并行程序执行三个阶段。程序模型算法设计阶段,开发人员面对参数化的并行机设计程序模型算法;并行程序设计阶段,开发人员利用并行开发平台开发具体的并行程序,实现并行任务;并行程序执行阶段,并行程序运行在相应的软硬件架构下,通过解释系统优化的计算参数优化指令执行效率。(2)对模型框架进行细化和实现,针对分层异构模型的分层,在不同的层次设计相应的方法库、参数库、程序复用库等工具对模型功能以匹配,分层实现并行算法设计与实现的过程,最终实现并行计算模型的动态性、自适应性、可重构性与通用性。(3)在不同的层次之间,提出了语言解释系统和编译系统,实现层次之间的链接,保证了系统模型的框架的完整性和可实现性。(4)利用该异构并行通用计算模型,实现了叠前偏移程序并行算法的设计。叠前偏移程序算法是石油探测中经典算法之一,该算法的串行程序已经较为完善,但其并行算法一直是个较为复杂的问题。应用该模型很好地解决了其并行性。该通用并行计算框架对应用开发人员提供简单易用的设计语言,实现并行计算程序设计的高效性、正确性、普适性。因而具有广泛的应用前景和显著的社会效益。分层异构并行的通用计算模型为应用开发人员提供独立于硬件的可扩展的编程接口,为具有普遍性的问题建立方法库,为程序运行平台建立参数库,综合管理不同的计算资源,合理分配计算任务,减轻程序的开发难度以及应用开发人员的工作量。