面向对象并行技术的研究

面向对象并行技术的研究

龚向坚[1]2008年在《基于面向对象并行技术的虚拟网络实验系统设计与实现》文中研究说明信息时代网络的作用越来越重要,越来越多的人希望有一个廉价实用、简单方便和具有良好可扩展性的网络实验环境来学习和研究网络,因此计算机网络仿真应运而生。本文主要讨论了应用面向对象并行技术如何有效地实现对计算机网络系统的仿真,构建一个高效实用的虚拟计算机网络实验系统。本文首先对面向对象并行技术进行了研究。近年来,在将并行计算和面向对象两种技术结合起来,即进行面向对象的编程并同时获得并行性的研究方面,进行了许多有益的探索,并取得了一些实质性的成果,本文通过对并行程序设计技术和面向对象程序设计技术的进行深入研究和分析,提出了一种基于分布式对象和多线程技术的面向对象并行程序设计方法,实验证明此方法能够有效地提高软件系统的并行性。然后讨论了应用面向对象并行技术如何有效地实现对计算机网络系统的仿真并构建一个高效实用的虚拟计算机网络实验系统。构建一个虚拟计算机网络实验系统,关键问题是如何实现网络虚拟设备对真实设备的模拟,如何真实地模拟现实世界中各网络设备工作过程中的并行特性,如何模拟复杂网络系统的运行,并能在最大程度上与实际情况相吻合。本文以面向对象并行技术为基础构建了一个计算机网络仿真并行模型,使用分布式对象来模拟真实世界的网络硬件设备,采用多线程技术来实现对象之间的并行执行以模拟真实世界中网络硬件设备的并行运行,较好地解决了虚拟计算机网络实验系统中的关键技术问题——虚拟设备并行运行,成功地设计和实现了虚拟计算机网络实验系统,实验证明基于面向对象并行技术的虚拟计算机网络实验系统设计合理,并行性较好,响应速度适中。

何艳丽[2]2002年在《面向对象并行技术的研究》文中研究表明并行技术和面向对象技术极大地促进了计算机应用和软件技术的发展,近些年来,在将这两种技术结合起来,即进行面向对象的编程并同时获得并行性的研究方面,进行了许多有益的探索,并取得了一些实质性的成果。现实世界是并行的,所以用并行方法来研究现实世界的并发行为将是一件十分具有实际意义和广泛应用背景的工作。 本文我们讨论了什么是面向对象并行技术及在面向对象中引入并行后所产生的继承异常现象;分布式对象技术和多线程技术;分布式并行模型。下面概要给出: 分布式对象是并行技术的主要表现形式。分布式的本质是并行,而并行需要分布式的控制集成,分布式并行计算一直是各国计算机界具有战略意义的重要研究领域。分布式对象技术本身的特征是解决并行软件互操作问题的一种有效手段。使用分布对象技术能够将分散在异构系统中的处理资源组织起来并发挥它们的并行计算能力。在本文中主要对分布式对象的并行实现及互操作模型进行了研究。 多线程技术是现代操作系统有别于传统操作系统的重要标志,是提高系统资源利用率的技术手段。多线程的产生是系统并发性的需要。在此主要对多线程技术和多线程机制的应用进行了探讨,重点在于通过对当前面向对象模型的研究,提出了一种分布式并行模型,其中的并发面向对象模型不同于其他模型之处是它的体不再从事烦琐的消息管理,而是仅仅进行宏观调控,解决了对象体可能会产生的“瓶颈”现象。并且用Java写出了该模型的执行方法,最后通过一个例子对该模型进行了模拟。

苏岩[3]2016年在《面向基叁体系结构的并行应用体系关键技术研究》文中研究说明大数据时代为多核应用体系的研究带来了新的挑战。在应用层次,开发多核系统性能与效率的关键在于应用模型的设计,以适应对海量且多元的数据进行持续处理和分析。而应用模型体系与多核平台体系结构的契合程度,主要反映在是否更好的开发和利用了多核平台的并行性,是否充分发挥出了并行计算的资源优势。流式计算作为模块化的计算模型,为动态可变的数据流应用提供了分布式处理的平台体系。目前在分布式计算领域开始使用的异步消息驱动机制,为并行应用的模块化拆分提供了一套松散耦合的接口环境。其适合于对分布式计算模块进行切分和整合。在大数据背景下,如何设计动态的,自适应和可扩展的并行应用模型,已经成为近年来学术界和工业界共同关注的焦点。基叁多核体系结构(Triplet-Based Architecture,TriBA)是本人所在课题组提出的一种新型的在体系结构层次直接支持面向对象技术的多核并行体系结构,其设计采用了层次化的存储结构和消息处理机制。本文主要针对TriBA的消息处理机制和应用模型体系展开深入研究,提出了一种自适应的,可扩展的应用编程模型与框架,其将消息传递模式与并行规划相结合,为分布式流编程提供了一套动态可扩展的开发规范。主要针对流式处理的并行性和自适应性展开深入的研究,提出了可控粒度并行技术,自适应并行技术和自适应负载平衡策略。本文研究内容及成果主要包括:(1)针对TriBA中的面向对象体系提出了一种基于消息驱动的分解与收敛编程模型。区别于传统的异步流式编程模型,本文所提出的基于消息驱动的分解与收敛流式编程模型,基于C++11的多线程内存模型进行底层运行环境的构建,并利用消息传递控制数据流的处理过程,能够将整个流处理过程切分为多个分布式的并行处理节点,把整个处理过程划分为分解和收敛两个过程。分解过程负责将应用的整个计算过程拆分为多个并行的,分布式的消息处理模块。收敛过程由多个具有异步消息合成功能的节点构成,负责对多个异步消息模块进行同步处理。整个模型利用消息的传递,控制,合成,来实现流式处理中的并行性控制问题。(2)面向TriBA中的消息处理机制提出了可控粒度(Controlled-Grained Parallelism)并行技术。在分布式流应用环境中,研究开发了StreamMDE编程框架,其在任务并行和数据并行两个层面来管理并行的规模。在任务并行层面,提出了有效确定性通信技术(Effect Deterministic Communication),其有效的降低了分布式流应用环境中的同步通信损耗,并确保了各个异步节点进行协同运算时的结果一致性。在数据并行层面,提出了面向集成消息的虚通道技术(Message Integration Oriented Virtual Channel),其有效的在单个计算节点中规划数据并行的规模,避免了计算资源在单一节点的过度使用,实现了计算资源在分布式流图中的均匀分布。(3)面向TriBA中的动态资源管理策略,提出了自适应并行技术(Self-Aware Parallelism),并在流式计算环境中建立了自适应并行机制(StreamAware)。该机制的核心是设计并实现了一个基于分布式流计算环境的自适应环,提供了一套标准的方法来使流式应用通过自适应的调整程序流图结构来适应数据流的动态变化。其中的自适应环由基于消息驱动的异步有限状态基(Asynchronous Finite State Machine)实现,其定义了自适应环运行过程中的整个状态空间和相应的状态转换规则。(4)针对分布式流计算中的负载平衡问题,提出了基于消息驱动的自适应负载平衡策略(Self-Aware Load Balance Strategy),其根据数据流的变化,以消息反馈的方式传递和汇总各个节点的负载状态,并建立具备自适应带宽的消息通道,自上而下的在流图中调整各层节点的吞吐量和数据并行规模。区别于传统负载平衡方法需要借助于全局同步的做法,本文所提出的自适应负载平衡策略采用局部与整体相结合的调整方法,利用局部消息反馈来分层级生成调整策略,再由各级节点自上而下执行调整。其为面向TriBA的StreamMDE应用编程框架提供了灵活有效的负载平衡解决方案。

李绪梁[4]2011年在《实时监控系统中基于多核并发多任务技术应用研究》文中提出实时监控与数据采集(SCADA)系统是将先进的计算机技术、工业控制技术、显示技术、通信技术、测量技术等结合在一起,从而完成数据采集与监视控制功能的计算机系统。而物品检测是SCADA的典型应用之一。它实时并发地完成物品包括外形影像、内部影像(如X光影像)和挥发、放射性等物理参数的采集与处理,具有实时、并发多任务的特点。因此如何高性能、高稳定性地实现所要求的功能又有很高的开发效率成为该类系统开发的关键。本文旨在利用计算机多核(多CPU)化的最新技术成果,将一个实际物品检测系统移植到多核平台,充分利用多核平台的并行性与并发性优势建立起基于多核平台的物品检测系统通用构架。首先,针对一个实际物品检测软件系统进行功能需求建模,然后使用UML技术建立系统静态模型,特别是针对系统多个数据采集、检测与控制任务同时执行的特点建立系统的动态模型,描述了系统中实时性与并发多任务的需求。据此进行面向对象的系统设计,根据系统硬件设备种类多,型号的变化情况而设计的设备类隔离了实际硬件与系统的耦合。接下来也是本文所研究的核心技术就是应用.NET4.0下全新的任务并行库(TPL)支持的并行任务取代原有的多线程技术实现物品检测系统中的基于多核环境下的并发任务算法;加之应用生产者-消费者模式实现不同平行任务之间的通信、数据交换与任务同步。根据以上设计所编制的若干程序已经应用到实际系统中。最后,探讨了应用Visual Studio2010中的并发可视化分析器进行复杂多线程多任务程序调试和可视化的可能性,并且进行大量数值实验和分析与比较,验证了基于多核并行任务模式构架的新系统比较原有多线程模式的系统性能的显着提高,对未来该类系统的改善提供经验和技术支持。

刘聪[5]2014年在《面向多核体系结构的并行优化关键技术研究》文中研究指明当前,多核处理器已经广泛应用于从巨型机、桌面处理器到移动终端等各个计算领域,计算技术已经全面迈入多核和众核时代。本文回顾了高性能微处理器的发展趋势:工艺的影响、体系结构的影响、功耗的因素、应用的变化;提出了迎接多核处理器所带来的挑战与机遇:多核并行结构问题、访存瓶颈问题、功耗问题、支持并行的片上互连问题、多核并行编程问题。本文以当前的多核体系结构为基础,从软硬件协同的角度,研究面向多核体系结构的并行优化关键技术,从面向多核的线程级前瞻(Thread Level Speculation,简称TLS)并行优化模型、面向多核线程级并行优化的Cache一致性协议及存储体系结构、多核片上网络结构、线程级和数据级并行优化的同步数据触发多核体系结构等方面进行了研究。论文取得的研究成果和主要创新点描述如下:1.提出了一种面向多核轻量的线程级前瞻并行优化模型。该轻量级模型基于数据链表支持线程级前瞻,包含了并行编程模式、线程前瞻并行设计、前瞻并行调优方法、软硬件数据链表实现等方面。所设计的并行编程模式较以往系统更加简洁,利于编译自动化,线程前瞻并行设计能有效维持整个并行程序的正确执行,数据链表的设计带来了良好的独立性。本文提出了固定长度寄存器向量链表和基于高速缓存的有序链表两种硬件改进方案,硬件实现容易且高效。实验证明,在核数较少的多核体系结构上该轻量级模型具有其他线程前瞻模型相似的良好加速效果,同时具有设计独立、灵活等特点。2.提出了一种面向多核结构线程级并行优化的Cache一致性协议及存储体系结构。该协议有效解决了集中检测机制带来的访问瓶颈问题,为各核之间线程级前瞻提供了一种分布式协同方式,为TLS在更多核心的处理器之上应用带来了理论与验证基础。本文对所提出的一致性协议进行了完备性进行了证明,并进行了功能验证和性能测试实验。实验结果表明在核数较少时具有和集中检测模型相似的性能,在更多核心时具有明显的可扩展优势,同时可以极大地减少重启线程次数。在此基础上,本文还提出了支持线程级前瞻的存储体系结构,在二级Cache中设置了前瞻线程恢复缓冲区解决了该一致性协议在线程切换上支持不足的问题。3.提出了一种多核片上网络中线程间数据通信性能理论分析模型,以及一种面向线程间通信的可编程片上网络结构。本文首先从宏观角度提出了一种线程间数据通信性能理论分析模型,分析了在片上网络中高优先级多播报文的通信性能特点与对其它种类报文的影响。本文的方法基于随机网络演算理论,推导得出多播报文在传播过程中的中间路由的缓存上界以及端到端的延迟上界,该模型为片上网络中数据通信的性能分析提供了切合实际的理论基础。随后,为了支持不同优先级报文,根据软件定义网络的思想,作者首次提出了一种多核体系结构中软件定义的片上网络结构,该结构将网络控制层和数据转发层分离开来。使用者可以灵活地对片上网络进行编程,根据线程间通信的需求对网络进行配置,从而提高片上网络性能。4.提出了一种高效线程级和数据级并行的同步数据触发多核体系结构。该多核体系结构基于传输触发结构,结合同步数据触发思想,具有线程级前瞻执行原理、线程级前瞻Cache一致性及存储体系结构,各核之间采用面向线程间通信的可编程片上网络,处理单元内依据本文提出的编译优化策略充分挖掘数据级并行,计算内核可以根据应用而优化配置。然后,在该多核体系结构上实验H.264一系列接口程序,得到了较好的线程级、数据级并行优化效果。实验结果表明该结构是一种适用于数据密集计算的高性能多核体系结构。当前多核体系结构已经逐步占据了各个计算领域,但是针对多核结构并行技术的有效性直接限制了这种体系结构的实用性和发展性。本文通过围绕多核结构展开一系列并行优化技术的研究,采取了软硬件协同的方式,通过设计、实验验证,获得了在各自应用场景的有效性。这些关键技术的研究,为未来多核处理器的设计与应用提供了有意义的探讨。

周琛[6]2018年在《面向CPU/GPU混合架构的地理空间分析负载均衡并行技术研究》文中研究说明地理空间分析是地理信息科学及遥感应用领域的研究热点。随着对地观测技术的快速发展,地理空间分析面临着数据量庞大、计算过程复杂密集和计算类型多样的难题。CPU(Central Processing Unit,简称CPU)集群、GPU(Graphics Processing Unit,简称GPU)集群等新一代高性能计算硬件架构的发展,为受制于计算性能而难以开展的大区域、多尺度、异构地理空间分析提供了契机;采用高性能并行计算技术以提高地理空间数据的计算效率十分迫切和必需。如何实现并行计算过程中的负载均衡是高性能地理空间分析中的关键问题与难点。因此,发展高效、适用性强的地理空间分析负载均衡并行技术,具有重要的研究意义和巨大的应用前景。现有的地理空间分析负载均衡并行技术多集中于调用开源并行算法库中的并行化语句实现对传统地理空间分析串行算法的简单并行化封装;此外,采用的空间数据划分、并行任务调度等负载均衡策略较为单一、粗略,未能顾及不同空间数据类型的结构特征、不同地理空间分析类型的算法特征、不同并行计算过程的粒度特征及并行计算环境的架构特征,极易引起并行计算过程中的任务负载失衡,造成并行加速效率低下。为解决上述问题,本研究面向CPU/GPU混合异构的并行硬件架构,围绕地理空间分析中具有代表性的典型算法与实际应用,即矢量多边形数据空间分析与地理栅格数据空间分析,设计并实现与其数据特征、计算特征和并行粒度相适应的负载均衡并行技术。具体来说,研究通过构建计算复杂度模型,以有效指导矢量多边形空间分析算法并行化过程中的数据划分,从而缓解并行计算中的数据倾斜;通过顾及栅格数据有效计算量和数据粒度分解特征,实现栅格数据空间分析算法并行化过程中的数据均衡分配及动态调度;研发自适应负载均衡并行模型,设计适应CPU/GPU混合异构的并行方法及自适应负载均衡方法,实现对不同并行计算环境、不同算法类型及不同数据量的良好适应性。研究的主要内容和贡献包括:(1)基于计算复杂度的矢量多边形空间分析负载均衡并行方法。围绕矢量数据空间分析中的典型应用类型——矢量多边形数据空间分析,针对传统数据划分方法的划分结果不能反映多边形的实际计算量,且极易引起数据倾斜的问题,研究分别针对数据密集型和计算密集型多边形空间分析类型构建多边形复杂度计算模型,用以指导矢量数据的均衡划分。通过分析不同算法类型的原理与特征,筛选可能影响算法计算效率的影响指数;构建多边形模拟数据集,通过模拟实验确定对算法效率实际有影响的指数及对应的影响程度顺序,并以此构建多边形复杂度计算模型。此外,考虑到多边形形态各异、复杂多样的数据结构特征,根据具体算法原理设计复杂多边形的分解方法,从而进一步缓解并行计算过程中的多边形数据倾斜。在并行CPU集群上进行算法并行效率及负载均衡性能的测试。该集群包含9个并行计算节点,每个计算节点包含2颗Intel(R)Xeon(R)E5-2620 CPU;各CPU的规格为2.00 GHz主频、六核十二线程、16GB内存。实验结果表明,基于多边形计算复杂度的并行方法较传统并行方法可大大缩短算法的运行时间,并取得良好的加速比和稳定的负载均衡性能。采用上述方法实现的多边形栅格化并行算法在计算5.5 GB的多边形数据集时,可将运行时间从1668.45秒减少至86.95秒,并取得19.19的最高加速比;实现的多边形相交计算并行算法在求解1,207,826个相交多边形组时,可将运行时间从1497.24秒减少至85.97秒,取得的加速比峰值为17.42。此外,实现的并行算法对不同多边形数据类型和不同算法类型均具有良好的适用性。(2)顾及有效计算量的多粒度栅格空间分析负载均衡并行方法。常用的栅格数据划分方法未能顾及栅格有效计算量,且调度方法极易引起计算节点间的并行阻塞,并造成空闲节点处于无效等待状态。为了解决上述问题,研究根据不同栅格空间分析的算法特征将其分为局部型和全局型计算类型,并以非空值栅格单元个数作为栅格有效计算量的度量标准。针对局部型栅格空间分析类型,研究提出考虑栅格有效计算量的不规则数据划分方法和多粒度动态并行调度方法;针对全局型栅格数据空间分析类型,研究设计两阶段数据划分方法、抓取式并行调度方法以及基于二叉树的计算结果融合策略。实验结果表明,研究提出的数据划分方法和并行调度方法较传统方法均能大大缩短算法的并行时间、取得更好的并行加速比和稳定的负载均衡性能。采用上述方法实现的k-means遥感影像分类并行算法,在9节点并行CPU集群上计算6.9 GB遥感影像时,可将运行时间从2400.28秒减少至118.42秒,最优加速比为20.27;实现的栅格多边形矢量化并行算法在计算3.8 GB的土地利用分类栅格数据时,可将运行时间从1362.36秒减少至146.65秒,并能取得9.29的最高加速比。(3)面向CPU/GPU混合架构的自适应负载均衡并行计算模型。研究将地理空间分析负载均衡并行技术涉及的不同层面归纳为数据、算子、并行化方法、粒度和并行计算环境五个要素,并在此基础上构建了自适应的负载均衡并行计算模型。为使模型能良好地适应于CPU/GPU的混合架构,研究提出适应CPU/GPU混合异构计算环境的并行方法,可充分利用CPU和GPU的并行计算性能。研究设计串行算法快速并行化方法和自适应负载均衡方法,可根据待处理数据类型、算法类型和并行计算环境自适应地选择并行化方法和计算粒度,实现不同串行算法和自定义计算规则的快速并行化,并实现并行计算过程中的有效动态负载均衡。最后,采用面向对象、插件式开发的设计思想,研发了面向CPU/GPU混合架构的自适应负载均衡并行计算平台,实现了模型从抽象的逻辑描述到实际应用的转化。实验结果表明,研究提出的自适应负载均衡并行模型对CPU/GPU混合异构计算环境中不同的算法类型和不同的数据量均具有良好的适应性。本研究的主要贡献包括:设计了系统的矢量多边形复杂度模型构建方法及复杂多边形粒度分解方法,提出了融合多计算粒度的栅格有效计算量负载均衡并行技术及研建了适应性强的CPU/GPU混合异构负载均衡并行方法。

游检卫[7]2016年在《高性能多物理场数值算法研究及其应用》文中研究指明进入21世纪,随着高功率微波、深空探索、等离子体物理等新兴领域的发展,人们迫切希望了解电磁场与其它物理场之间的相互作用,这种需求促进了多物理场数值算法的研究。多物理场数值算法的研究跨越了多个物理学科,例如电磁学、物理电子学、量子力学、生物电子、热学、弹性力学、计算机科学等。当前,多物理场数值算法正处于不断完善的阶段,因而存在着非常多的严峻挑战,例如计算精度的可控性、大规模计算带来的效率问题、多物理场之间的耦合问题等。本文在两项国家973项目的资助下,围绕着高性能多物理场数值算法及其应用这一课题开展了研究,并在基础理论和工程应用两方面均取得了创新性的研究成果。在理论研究方面,为了能够实现更准、更快和更智能的高性能多物理场数值求解算法,本文做了如下创新性研究:1. 为了开发出新型多物理场场数值算法,本文融合经典的有限积分算法和时域有限差分算法的优点提出了时域有限积分算法。由于该算法可以有效地消除空间差分带来的阶梯近似误差,因而其计算精度显着高于时域有限差分算法。而相比于有限积分算法,新算法由于避免了复杂的矩阵运算,因而在代码实现过程中可以更加简洁高效,这个优点在并行化计算过程中尤为突出。本文基于新算法数值求解了多物理场中的几个基本物理方程,实现了多物理场的数值模拟。相关成果发表在IEEE Trans. Electron Devices、IEEE Trans. Plasma Science和IEEE Antennas Propag. Magazine。2.为了提高新算法在模拟多物理场时的计算精度,本文结合时域有限积分算法的天然共形特性,提出了电磁共形技术和粒子共形技术。电磁共形技术包括一致性共形迭代算法和电磁共形信息提取技术。粒子共形技术包括粒子共形边界的碰撞模型和粒子共形信息提取技术。以上方法有效地克服了传统算法中的空间离散误差,因而可以显着地提高多物理场数值算法的计算精度。相关成果发表在IEEE Trans. Antennas Propag.和IEEE Trans. Electron Devices。3.为了提高新算法在模拟多物理场时的计算速度和计算规模,本文结合时域有限积分算法的天然并行特性,提出了一种新型的MPI-OpenMP-GPU (MOG)混合并行技术。这种并行策略集成了现有并行算法的各自优点,MPI部分可以有效地利用分布式内存,实现电大目标的计算;OpenMP部分则可以充分使用单机CPU的多线程资源,实现任务级并行的加速;而GPU部分利用自身大量并行核的优势,完成数据级任务的并行。为了使各并行部分均能高效运算,本文还提出了一种自适应负载平衡策略。4. 为了使得新算法在模拟多物理场时更加智能化,本文提出了一种新型自适应稳态收敛策略,该新型收敛策略可以更加智能化地判断当前迭代时刻是否达到了系统稳态。为了实现这种智能化判断过程,本文创新性地提出了衰减系数和稳定系数,它们可以有效地克服传统算法中提前收敛、非单调和不收敛的缺陷。相关成果发表在IEEE Trans. Microw Theory Tech。除了理论创新,本文还积极地将最新研究成果应用到实际工程中,并在以下几个工程领域取得了创新性研究成果:1.在新型超材料(Metamaterial)设计领域,本文通过深入研究场-路耦合算法,详细论述了经典无体积式集总元件在超材料模拟时产生网格色散误差和结构耦合失真的主要原因。借助这些研究成果,本文提出了一种新型的有限体积式集总元件模型。实验结果表明,该模型可以有效地消除超材料模拟时产生的网格色散误差和结构耦合失真。相关成果即将发表在IEEE Trans. Microw Theory Tech。2. 在高功率微波器件领域,为了能够高效准确地模拟器件内部的电磁粒子强耦合效应,本文结合时域有限积分算法和粒子元胞算法(PIC:Particle-In-Cell),联合求解了Maxwell方程及Newton-Lorentz方程。同时,本文还深入研究了经典Vaughan二次电子发射模型,并将其很好地拓展至自主研发的电磁粒子联合模拟平台。为了能够使实验方法和数值方法在相同激励形式下对电磁粒子的强耦合效应进行分析,本文基于局域导波端口提出了功率幅值转换技术。测量结果表明,本文数值算法的结果与实验结果吻合很好。相关成果发表在IEEE Microw. Wireless Compon. Lett.和IEEE Trans. Electron Devices。3. 在多载波通信领域,为了能够数值分析大功率多载波通信情况下的无源互调现象(PIM:Passive Intermodulation),本文提出了一种新型的场-路耦合求解方案。在该方案中,电磁场部分由时域有限积分算法进行数值模拟,而多物理场产生的非线性电流响应则用适当数目的非线性集总元件表示,两者之间的耦合过程通过全电流安培定理实现。为了解决PIM数值分析中的多尺度问题,本文利用表面磁场巧妙地获取了缝隙压降。此外,基于共形技术建立了准确的非线性集总元件的加载方式。以上问题的解决使得PIM的数值分析成为可能。以上研究工作共在IEEE Trans. Antennas Propag、IEEE Trans. Microw Theory Tech、 IEEE Trans. Electron Devices等国内外核心期刊发表(或录用)第一作者学术论文11篇,国际会议论文6篇,其中SCI收录9篇,EI收录14篇。

张江涛[8]2002年在《CFD显式差分计算程序的自动并行技术研究》文中指出随着并行处理技术的不断发展以及并行计算机的日益推广应用,越来越多的人要求使用并行机。然而对于大多数普通用户而言,并行程序的编写还十分困难。为了解决这一困难,80年代以来,人们对串行程序的自动并行技术展开了研究,十多年来取得了长足的进步,但实际应用效果还不理想。我们针对计算流体力学CFD (Computational FluidDynamics)在大规模科学与工程计算中的广泛应用以及显式差分计算方法在CFD计算问题中的普遍使用的实际情况,对CFD显式差分计算程序的自动并行技术展开了深入的研究。 本文讨论、分析、总结了通用的自动并行化技术:相关性分析理论、程序变换技术、并行模式以及同步通信与优化问题等等,它们是本文研究工作的理论基础;针对研究对象,深入分析了CFD计算的特点,特别是显式差分计算的特点;并归纳出传统的自动并行化技术在CFD应用中存在的问题:并行粒度小、难以获得全局统一的数据划分方式,对于分布存储结构的并行机难以获得高效率。 本文对西北工业大学开发的自动并行化系统NPUPAR进行了深入的剖析并进行了有效的改进。NPUPAR是一个源到源的并行化系统,它对FORTRAN77编写的串行源程序进行自动并行化,生成基于PVM环境的并行源程序。它对于迭代求解的场计算问题能够保证正确性,但由于串行程序中大量复杂结构的存在,以及程序员书写程序的不规范性,该系统多采用保守的分析方法,结果生成大量的冗余通信,导致并行效率低下。我们在深入研究面向CFD流场计算问题的自动并行化技术:区域分解法和场循环相关等技术以及深入剖析NPUPAR源码的基础上,总结出该系统效率低下的几个主要原因并对其进行了有的放矢的改进。通过对两个实际的CFD实例程序的对比测试,改进后的NPUPAR系统在保证正确性的基础上并行效率有了明显的提高(普遍提高了10%左右),并对测试中出现的超线性加速比做了深入的定量分析。 最后,与流体力学应用的专业人员合作,提出了一种基于应用理解的自动并行方法,并把研究对象从CFD问题扩展为场离散计算问题。它完全从应用的角度出发,描述场离散计算问题的本质,并建立了基于对象观点的分区并行计算模型,在此模型的基础上,提出了面向场离散计算问题特征分析的自动并行化方法。它把分区后的每个子区域看作一个单一的对象,对于划分后引入的内部边界,采用区域重迭技术,使得对象间通过内部边界的消息传递来完成整体的耦合。算例模拟结果验证了所提出方法的正确性和可行性,并为下一阶段自动并行系统的实现提供关键技术的支持。

谢克家[9]2011年在《多核图像处理并行设计模型的研究及应用》文中研究指明图像处理面临数据量大,处理速度慢等问题,人们研究和采用基于并行机或并行集群的图像并行处理技术,以提高图像处理的效率。随着多核架构的出现,多核并行技术成为提高图像处理速度的新手段,但已有的并行设计和编程模式不完全适合多核架构且不具通用性,难以推广使用。目前,多核并行技术在图像处理领域的应用受到广泛关注,对多核图像处理的研究已成为一个热点。本文在将多核并行技术和图像处理算法有机结合的基础上,提出了并行化分析、建模、映射、调试和性能评价及测试发布应用等五个设计步骤的多核图像处理并行设计模型,该模型易于理解,便于应用;以全孔壁展开图像的拼接为研究对象,将多核图像处理并行设计模型应用到地质勘探中,设计实现了基于并行模型的多核并行图像拼接算法,该算法可充分利用多核处理器的并行计算资源,缩短了大规模全孔壁展开图像拼接的运行时间。本文主要完成了以下工作:①讨论课题研究的背景及意义,总结国内外多核并行技术的主要研究方向,对多核图像处理概念及其研究现状进行描述;从多核架构特点、多核并行的分类及其编程模型、多核并行处理算法的性能评价等方面对多核并行技术进行介绍。②针对已有并行设计方法只应用于边缘检测、图像投影等特定算法不具通用性,提出了一种多核图像处理并行设计模型,以图像傅里叶变换算法的并行设计为例在单核、双核、四核、八核计算环境下验证模型的有效性,实验表明该模型在图像处理并行设计上具有可扩展性,扩展了图像处理的应用空间。③针对大规模全孔壁展开图像拼接耗时多的弱点,将并行设计模型应用到实际工程中。根据并行粒度划分对并行性能的影响,将全孔壁展开图像的拼接在图片级和任务级两种粒度上进行并行建模,最后在多核计算环境下实现了任务级粒度上的全孔壁展开图像的多核并行图像拼接算法。对其性能分析表明:该算法对于大规模图像拼接问题具有较好的加速比和计算效率,性能提升明显。④基于实际地质勘探的需要设计实现了全孔壁多核图像拼接系统。实际地质勘测应用表明,本文提出的并行模型应用灵活、便于推广、具有通用性,在图像处理的应用领域具有重要的理论意义和工程价值。

陈沉[10]2015年在《面向多线程程序的确定性并行关键技术研究》文中认为多核平台的普及扩大了对多线程程序的需求,然而多线程程序的编写、测试和调试一直是一个重大的研究挑战。其中一个关键的挑战是多线程程序的不确定性。程序可能会受到不确定线程交织的影响,产生不可预知的结果。确定性并行技术保证程序在相同的输入下总是被执行相同的线程交织,这极大地方便了多线程程序的调试,也使缺陷更容易重现。在确定性并行的多种实现方式中,基于运行时的确定性并行技术(即确定性执行技术)可以兼容现有的不确定性代码,因此成为当前的研究热点。确定性执行技术又可以概括地分为强确定性执行技术和弱确定性执行技术。强确定性执行技术允许程序有数据竞争,而弱确定性执行技术只能保证无数据竞争程序的确定性。然而当前确定性执行技术仍然存在着实用性不强的问题。例如,强确定性执行技术的开销较大。弱确定性执行技术虽然开销较小,但是需要开发者预先消除程序的数据竞争。本文针对多线程程序开发阶段和运行阶段的不同特点,分别研究高效且具有良好可扩展性的强确定性执技术和弱确定性执行技术。1)静态数据竞争检测的误报剔除技术。消除数据竞争是软件开发阶段的一项重要工作。静态数据竞争检测可以检测出所有可能的数据竞争,这不但可以使弱确定性执行技术的应用成为可能,还可以辅助强确定性执行系统减少插桩开销。然而,与其他程序分析工具一样,静态数据竞争检测也有较高的误报率。造成误报率过高的一个重要原因是静态分析方法往往过于保守地估计一个线程所能访问的内存范围。针对这个问题,我们提出线程例化(Thread Specialization)技术。线程例化可以静态地区分线程。通过在静态时就确定线程的数量和每个线程的ID,我们可以将并行程序转换成一个数据流和控制流都简化的版本。在这个例化后的程序上进行静态数据竞争检测,我们将得到更精确的结果。为了进一步减少误报,我们在线程例化的基础上提出了叁个优化。懒惰调整(Lazy Adjusting)可以在数据流分析过程中延时调整动态多维数组的值;代码段分析(Code Region Analysis)和阶段分析(Phase Analysis)可以剔除大部分原先因为忽视happens-before时序关系而造成的误报。以上叁个优化的结合平均可以减少77.8%的误报,同时可以减少57.9%的动态插桩点。2)面向强确定性执行的程序分析技术。强确定性执行系统即使在有数据竞争存在的情况下也能保证确定性。当前,保证数据竞争确定性的一种常用方法是通过缓冲对共享内存的访问来隔离线程。但是缓冲所有共享访存的开销是相当大的。我们提出一种面向强确定性执行的静态分析技术DRDet。我们认为不是所有对共享内存的访问都需要缓冲,事实上只需要缓冲与数据竞争有关的共享访存。所谓的与数据竞争有关的共享访存,包括所有可能的数据竞争,以及其他可能与这些数据竞争访问相同变量的访存操作。DRDet采用可靠的静态数据竞争检测工具来检测所有可能的数据竞争,并通过别名分析找到其他与数据竞争有关的共享访存。然而实验显示,别名分析的不精确性使得很大一部分共享访存被标记为与数据竞争有关。缓冲这些访存操作仍然会带来很大的性能开销。针对这个问题,DRDet采用了两个优化来减少用于查询别名分析的访存数量。我们在一个经典的强确定性执行系统上实现了DRDet静态分析。实验结果表明,DRDet在保持确定性和可扩展性的前提下将该系统的执行开销降低了1.6倍。3)无全局同步的弱确定性执行技术。现有的弱确定性执行系统几乎都会在程序执行中引入额外的全局同步,影响了程序的性能和可扩展性。针对此问题,我们提出一种新的线程执行模式——令牌自由模式(Token-Free Mode)。处在令牌自由模式的线程会主动放弃得到的令牌,从而避免部分线程因为长时间占有令牌而造成其他线程等待。基于这种技术,我们实现了一个负载均衡的弱确定性运行时系统——LBDR(Load-Balanced Deterministic Runtime)。LBDR通过令牌自由模式来避免串行化,并且无需全局同步。实现结果表明,和经典的弱确定性执行系统Parrot相比,LBDR的性能提升了1.17倍。4)面向流水线并行的确定性执行技术。现有的确定性执行系统在流水线并行程序上的效率普遍较低,主要的原因是确定性执行会打乱流水线并行程序的负载均衡。针对这个问题,我们在LBDR系统中为程序员提供了一种性能指导语句——同步自由区(Synchronization-Free Sections)。同步自由区可以以一种确定的方式把令牌从同步密集线程向非同步密集线程转移。另外,针对流水线并行程序容易出现单线程执行的情况,LBDR可以在不破坏确定性的前提下动态消除单线程区内不必要的确定性调度操作。实验结果表明,我们的系统在流水线并行程序上的性能比Parrot平均提高了22.5%。

参考文献:

[1]. 基于面向对象并行技术的虚拟网络实验系统设计与实现[D]. 龚向坚. 南华大学. 2008

[2]. 面向对象并行技术的研究[D]. 何艳丽. 郑州大学. 2002

[3]. 面向基叁体系结构的并行应用体系关键技术研究[D]. 苏岩. 北京理工大学. 2016

[4]. 实时监控系统中基于多核并发多任务技术应用研究[D]. 李绪梁. 东北大学. 2011

[5]. 面向多核体系结构的并行优化关键技术研究[D]. 刘聪. 国防科学技术大学. 2014

[6]. 面向CPU/GPU混合架构的地理空间分析负载均衡并行技术研究[D]. 周琛. 南京大学. 2018

[7]. 高性能多物理场数值算法研究及其应用[D]. 游检卫. 东南大学. 2016

[8]. CFD显式差分计算程序的自动并行技术研究[D]. 张江涛. 国防科学技术大学. 2002

[9]. 多核图像处理并行设计模型的研究及应用[D]. 谢克家. 重庆大学. 2011

[10]. 面向多线程程序的确定性并行关键技术研究[D]. 陈沉. 国防科学技术大学. 2015

标签:;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  

面向对象并行技术的研究
下载Doc文档

猜你喜欢