面向异构众核平台的多任务流编程与性能优化技术研究

来源 :国防科技大学 | 被引量 : 0次 | 上传用户:huashu123
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
传统通用处理器的设计与制造受限于功耗、散热等因素,其计算能力的持续提升遇到瓶颈,不能满足人们日益增加的计算能力需求。由通用多核处理器和专用加速器组成的异构众核系统具有很好的计算能耗比,在高性能计算领域和嵌入式计算领域都得到了越来越广泛的应用。然而,通用多核处理器与加速器间的数据搬运开销(通信开销)却成为影响异构程序性能的重要因素。多任务流技术是一项可以高效利用异构系统计算资源的编程技术。它通过对计算任务与硬件资源的划分,重叠计算任务与数据传输任务,以利用异构系统的时间与空间共享特征,从而掩藏数据搬运开销。因此,面向异构众核系统研究多任务流机制的编程方法与性能优化技术具有重要的研究意义。使用多任务流技术编写高效异构程序,仍面临包括多任务流编程模型支持短缺、程序编写门槛高、性能优化困难等在内的多方面的挑战。目前只有部分编程模型支持多任务流编程,特别是国产众核系统尚缺乏对异构编程模型及多任务流机制实现的支持。异构系统的编程相对传统编程,增加了主机与加速器的数据传输、负载分配、加速器管理等操作,而且还需要针对加速器专门编写内核代码。而多任务流编程在异构系统编程基础上,还需要程序员划分任务数据、调度数据传输与计算任务,这进一步增加了编程难度。多任务流编程的性能问题主要是流配置参数的选择,包括任务的划分数量和硬件资源的划分数量。这些参数对多任务流程序性能有很大影响,且选择参数不当时程序的性能会比不使用任务流编程时更差。而选择恰当的参数很具有挑战性,这是因为流配置参数的取值空间很大,并且不同的平台、程序和输入数据集,最优的参数取值都可能不同。本文面向异构众核平台研究多任务流机制实现与多任务流程序优化技术,包括支持多任务流机制的编程模型实现技术、多任务流代码自动生成技术和多任务流程序自动调优技术,旨在最小化宿主机与加速器间的通信开销并降低程序员编写异构程序的难度,从而最大程度地发掘异构系统的潜在计算性能。本文的研究内容和贡献主要包括:1.针对国产众核加速器Matrix-2000缺少多任务流编程模型支持的问题,本文首次设计并实现了Open CL编程环境MOCL,支持多任务流编程;其运行时系统采用“推送优先”的任务分派方法和“无锁”的原子操作实现,方便用户有效利用众核加速器。还针Matrix-2000的体系结构特点,提出了一组新的分析与优化技术,可以帮助用户高效地发挥加速器计算潜力。2.针对编写异构多任务流程序容易出错且耗时的问题,本文首次实现了一个异构多任务流代码的自动生成与优化框架,能够将串行C代码自动地分析并转换成异构多任务流代码。该框架不仅能够支持当前各种主流的异构编程环境,具有良好的可扩展性,而且还实现了消除冗余数据传输等优化技术,从而显著地提高所生成的多任务流代码的性能。3.流配置参数(含任务划分数量和硬件资源划分数量)是Xeon Phi平台上影响异构多任务流程序性能的重要参数。针对最优流配置难以找寻的问题,本文首次提出了一种自动化的最佳流配置预测模型构建方法:先对参数进行分类,然后使用机器学习算法训练分类器,使用分类器来预测多任务流程序参数。实验结果表明,与只使用单个任务流相比,使用本方法能够获得的平均加速比为1.6倍,能够达到最优性能的94.5%。4.使用分类方法获得的流配置参数只能落到训练时“所能见到的”参数集合中,但是该参数集合有可能无法覆盖整个参数取值空间,导致模型的泛化能力有限。为了避免对参数进行分类并将该方法应用到更多的异构众核平台,本文使用回归方法构建性能模型以预测使用不同参数时多任务流程序的性能,通过对参数空间进行搜索找到优化参数。在Intel Xeon Phi和NVIDIA GPU两个平台上的实验结果表明,与使用单个任务流相比,本方法能够取得的平均加速比分别为1.6倍和1.1倍,分别达到最优性能的93.7%和97.9%。
其他文献
跳频(Frequency Hopping,FH)是一种典型的扩频通信方式,其在军事通信系统以及民用通信方面都得到了广泛的应用。跳频信号的载频在跳频序列的控制下,在一定的频带范围内伪随机跳变,从而达到扩展频谱的目的,并使其具有抗衰落、抗干扰、抗截获、易组网、多址能力强等优点。为了进一步提升跳频通信系统的性能,跳频带宽正逐渐加大,跳频速率也得到了大幅的提升,这使得跳频通信对抗面临更加严峻的挑战。目前,
到达角(DOA)估计是阵列信号处理的一个重要研究方向,其广泛应用在弹载被动阵列测角、语音信号处理、5G通信、射电天文等领域。随着现代信息技术的不断发展,DOA估计所面临的信号环境正变得日趋复杂。较高的测角精度和角度分辨力以及较低的计算复杂度往往是实际应用中所需要的,并且一些特定场景要求DOA估计算法具有二维测角能力、欠定DOA估计性能以及低信噪比、小快拍数下的适应能力。因此,本课题重点研究了雷达信
随着移动互联网、物联网及人工智能等技术的快速发展与智能移动设备的指数级增长,一些新型的低时延、高能耗的资源密集型移动计算应用应运而生,而资源密集型计算应用与资源受限的终端设备之间的矛盾日益突出。移动边缘计算将丰富的计算和存储资源部署在更靠近用户的无线接入网边缘侧,为用户提供就近计算迁移和任务执行服务,可有效提高计算服务响应时间、缓解终端设备的计算和能耗压力,被认为是解决上述矛盾的关键技术。然而,考
随着全球卫星导航系统的不断发展,越来越多的导航应用对高精度测量的需求不断提高。特别是干扰场景下的高精度测量问题已成为研究的热点。此外,多径误差也是制约卫星导航高精度应用的主要误差源之一。本文围绕干扰和多径场景下的高精度测量问题,从无偏干扰抑制、多径抑制算法性能评估与多径参数估计、干扰和多径联合抑制三个方面展开研究,主要工作和创新成果如下:(1)针对频域抗干扰算法会导致导航信号相关峰畸变问题,建立了
非合作双基地雷达探测系统由于具有“四抗”特性且成本较低,成为近年来雷达领域的研究热点。利用非合作雷达信号作为外辐射源的被动探测系统不仅提高了外辐射源雷达的探测威力性能,而且扩展了可利用的外辐射源种类。但系统的研究面临诸多问题和挑战,特别是系统探测过程中的杂波干扰以及低检测概率下的目标跟踪问题。本文围绕非合作双基地雷达的杂波干扰抑制以及目标跟踪关键技术开展了深入研究工作。主要内容概况如下:第二章分析
空间信息网络是构建未来全球数据通信业务的基础性平台,是天、空、地一体化的集成网络系统,能够为用户提供广域无缝的信息网络服务,在国防安全、航空航天、应急救援、智慧城市等多个领域都具有广阔的应用前景。与传统的信息网络相比,空间信息网络采用多星共轨、空地协同的网络架构来提升网络的传输、覆盖以及稳定性等能力。由于网络中节点种类多样、数量众多、功能各异,空间信息网络结构非常复杂,大大增加了网络体系结构设计的
在战场环境、灾害救援等应用中,由于各类干扰、破坏的影响,通信基础设施的可靠性难以保障,为信息的高效传输带来极大挑战。机会网络通过存储-携带-转发这种点对点通信模式,克服了传统移动自组织网络需要较为稳定的通信链路的局限性问题,提供了一种尽力而为式的鲁棒性通信策略。通过高效运用动态、稀疏的通信机会,机会网络可以深度挖掘并应用各类通信资源的能力,对于高动态不确定性环境下的信息传输具有重要意义。但是,机会
高分辨率成像是合成孔径雷达(Synthetic Aperture Radar,SAR)系统研制与应用的关键环节。SAR系统的高分辨率探测感知特点,有效提升了SAR在焦点区域信息获取和态势感知能力,使其成为军用和民用遥感领域重要的获取信息手段。与高分辨率SAR相适应的高精度高效成像算法、运动误差补偿算法、宽幅连续测绘体制设计等仍面临诸多问题与挑战。本文立足于SAR高分辨率应用需求,对高分辨率SAR的
多输入多输出(Multiple-Input-Multiple-Output,MIMO)技术和多跳技术能够通过引入空间分集对抗衰落并提高频谱利用率,进而达到提升系统容量、增强传输可靠性的目的,是目前研究的热点。为进一步提高MIMO技术和多跳技术的信息可靠性,本文在MIMO技术和多跳技术传输中引入混合自动请求重传(Hybrid Automatic Repeat re Quest,HARQ)协议,并以提
高性能计算机的出现和快速发展,使其被广泛应用于云计算、安全、大数据处理等领域。据统计大数据处理占据了46%的份额位居榜首。存储结构的复杂多样,计算机体系结构的多样性以及大数据处理问题体量大、数据复杂多样等特点,高性能计算机在大数据处理领域的应用面临着巨大的挑战。本文主要研究多种存储结构下不同应用场景的异构并行算法和优化技术,选取了大数据处理中的迭代算法、高吞吐率需求、大规模网络融合三种典型的应用问