论文部分内容阅读
随着多核处理器的不断发展,应用程序对计算机性能提出了更高的要求,然而由于多核处理器每个核心的处理能力通常都比以往的单核处理器弱,使用多核处理器并不能直接带来高性能,性能提升要靠并行化的应用来实现,尤其对于信息量非常大的应用如图像处理应用,使用数据并行计算是提升性能的主要手段。然而多数并行应用都是针对特定的多核处理器设计的,与硬件联系过于紧密,针对特定处理器的应用难以移植到其他体系结构的硬件平台,为解决这一问题,本文提出并实现了一个数据并行编程平台,面向图像处理应用,针对不同级别的并行编程需求,提供并行编程语言接口、编程服务API、并行图像算法库三种粒度的编程服务,目的在于使开发人员无须考虑任何硬件的执行细节,专注于并行算法就可以利用编程平台开发出高效的、可移植的、通用的并行程序。本文的并行编程语言接口是通过对两种典型的并行编程语言进行抽象设计的,具有可扩展性,不仅能够应用于本文实验平台,也能够应用于其他SIMD体系结构的硬件平台,对于平台支持的硬件均采用数据并行技术进行加速,在SIMD处理机上通过硬件自身特点和并行程序设计加速,在PC上使用Intel平台的SSE指令进行加速。平台上开发的应用实例表明本文提出的数据并行编程平台是可用的、易用的、可靠的并且在各个实验硬件环境上都获得了加速。