当前位置:主页 > 科技论文 > 软件论文 >

面向国产异构众核系统的Parallel C语言设计与实现

发布时间:2019-07-11 09:45
【摘要】:异构众核架构具有超高的性能功耗比,已成为超级计算机体系结构的重要发展方向.但众核系统更为复杂的并行层次和存储层次,给编程和优化带来了极大的挑战.因此,研究面向众核系统的并行编程技术,对于降低国产众核系统并行应用的编程难度、提升并行程序的性能都具有重要的意义.提出统一架构的多模式并行编程模型,包括异构融合的加速运算模型和按同构方式编程的自主运算模型,根据编程模型设计了Parallel C语言,能够有效地描述国产众核系统的异构并行性.与其他众核系统上MPI+X的使用模式相比,编程和系统优化都具有全局视角,在多级局部性描述、单边消息、兼容已有多核应用等方面具有特色;基于Open64构建了Parallel C编译系统,全面支持加速运算模型和自主运算模型,提出并实现了数据布局与自动DMA、编译指导的线程代理和拓扑位置感知的集合通信等优化.Micro Benchmark和实际应用在神威太湖之光计算机系统上的测试数据结果表明:Parallel C语言和编译系统具有良好的性能和可扩展性,能够有效支撑大型应用.
文内图片:申威众核处理器结构
图片说明: 766JournalofSoftware软件学报Vol.28,No.4,April2017开发硬件数百万到10亿量级规模处理器核心的并发度,能表示多种类型、不同层次的并行性;(2)要能有效支持系统复杂的存储结构、局部性描述和高效的数据移动.2国产异构众核系统面向高性能计算的众核处理器包括Intel的MIC[17]、Nvidia和AMD的GPU[18,19]、Godson-T[20]、申威众核处理器等.申威众核处理器的结构如图1所示[21],每颗处理器包含4个core-groups(CGs),每个CG包含1个MPE(managementprocessingelement,简称主核)、1个8×8的computingprocessingelement(CPE,简称从核)cluster和1个memorycontroller(MC),4个CG通过片上网络(NoC)互连,处理器通过Systeminterface(SI)连接外部设备.申威众核处理器的主核和从核共享memory,从核采用轻量级的核心设计,配备由软件管理的高速存储器SPM(scratchpadmemory)[22],支持通过DMA(directmemoryaccess)方式在memory和SPM间批量传输数据.Fig.1ArchitectureofthenewSunwayprocessor图1申威众核处理器结构基于申威众核处理器的异构众核系统架构如图2所示,运算系统采用申威众核处理器构建,通过中心交换网络和管理网络与存储系统和管理系统连接,系统的登陆界面和存储空间采用单一映像组织,为用户提供统一的视图.国产异构众核系统运算系统存储系统中心交换网络(InfiniBand)管理网(GigaNet)管理系统远程网络用户终端Fig.2Architectureofdomesticheterogenousmany-coresystem图2异构众核系统结构
文内图片:异构融合的加速运算模型
图片说明: 何王全等:面向国产异构众核系统的ParallelC语言设计与实现7673面向异构众核系统的并行编程模型众核系统的显著特征是计算资源众多、并行层次比多核系统更为复杂,编程和优化的难度也比多核系统大,需要在并行编程模型和语言设计上有所突破,满足不同层次人员的编程需要.针对申威众核处理器异构并行、共享主存的架构特征,我们提出了多模式并行编程模型,包括异构融合的加速运算模型和按同构方式编程的自主运算模型,并且在此基础上设计实现了统一架构的并行编程语言ParallelC.异构融合的加速运算模型如图3所示,该模型有如下特点.1)ParallelC的进程(类似MPI进程)运行于众核处理器的主核,负责管理控制、通信、I/O等复杂的操作,大量的加速线程运行于众核处理器的从核,负责加速核心计算代码;2)进程和加速线程共享memory,与x86+GPU或x86+MIC上的编程模型相比,无需在两种存储器之间通过PCI-E或其他接口进行数据传输,编程方便、效率也更高;3)在节点内,可以通过共享扩展描述,方便地实现共享编程,提高节点内数据交换的效率;4)在进程之间,通过消息进行数据交换,并支持多级局部性描述,使ParallelC可高效扩充到大规模环境.该模型支持消息、共享和加速运算的任意组合,可有效描述异构系统多维度的并行,解决MPI+X模型要求用户掌握2~3种编程语言的问题.Fig.3Acceleratedcomputingmodel图3异构融合的加速运算模型设计按同构方式编程的自主运算模型有两个目的.一是让程序员以熟悉的多核方式编程,最大限度地屏蔽异构众核系统的复杂性;二是兼容ParallelC在多核环境下的遗产代码.自主运算模型如图4所示,程序员只需按传统多核方式进行编程,由编译系统将同构、单维度并行描述映射到异构、多维度并行的体系结构,ParallelC进程运行于从核上,通信、I/O、系统调用等复杂的功能则由主?
【作者单位】: 江南计算技术研究所;
【基金】:国家重点基础研究发展计划(973)(2016YFB0200502) 国家高技术研究发展计划(863)(2012AA010903,2015AA 01A301) 计算机体系结构国家重点实验室基金(CARCH201403)~~
【分类号】:TP312.1

【参考文献】

相关期刊论文 前3条

1 Haohuan FU;Junfeng LIAO;Jinzhe YANG;Lanning WANG;Zhenya SONG;Xiaomeng HUANG;Chao YANG;Wei XUE;Fangfang LIU;Fangli QIAO;Wei ZHAO;Xunqiang YIN;Chaofeng HOU;Chenglong ZHANG;Wei GE;Jian ZHANG;Yangang WANG;Chunbo ZHOU;Guangwen YANG;;The Sunway Taihu Light supercomputer:system and applications[J];Science China(Information Sciences);2016年07期

2 Wei Wu;Fengbin Qi;Wangquan He;Shanshan Wang;;CUDA's Mapped Memory to Support I/O Functions on GPU[J];Tsinghua Science and Technology;2013年06期

3 范东睿;袁楠;张军超;周永彬;林伟;宋风龙;叶笑春;黄河;余磊;龙国平;张浩;刘磊;;Godson-T:An Efficient Many-Core Architecture for Parallel Program Executions[J];Journal of Computer Science & Technology;2009年06期

【共引文献】

相关期刊论文 前10条

1 许汉君;刘林龙;杨海涛;缪雪龙;;燃烧室几何CFD自动优化程序开发[J];现代车用动力;2017年02期

2 赵美婷;刘轶;刘锐;宋凯达;钱德沛;;基于申威众核处理器的HOG特征提取算法并行加速[J];计算机工程与科学;2017年04期

3 何王全;刘勇;方燕飞;魏迪;漆锋滨;;面向国产异构众核系统的Parallel C语言设计与实现[J];软件学报;2017年04期

4 胡森森;计卫星;王一拙;陈旭;付文飞;石峰;;片上多核处理器Cache一致性协议优化研究综述[J];软件学报;2017年04期

5 侯超峰;高国贤;徐骥;;纳米材料制备及物性测量的虚拟过程工程初探[J];计算机与应用化学;2016年09期

6 石嵩;宁永波;李宏亮;郑方;;阵列众核结构上的一种多层分区Hash连接算法[J];计算机科学;2016年03期

7 石嵩;李宏亮;朱巍;;阵列众核处理器上的高效归并排序算法[J];计算机研究与发展;2016年02期

8 闫乔;覃志东;王绍宇;闫红曼;;同构多核/众核处理器任务分配自适应模拟退火算法[J];计算机科学;2014年06期

9 吴志敏;吕慧伟;陈明宇;;一个针对并行模拟引擎的性能评测实例[J];计算机科学;2013年03期

10 张轮凯;宋风龙;王达;;一种针对片上众核结构共享末级缓存的改进的LFU替换算法[J];计算机应用与软件;2013年01期

【二级参考文献】

相关期刊论文 前2条

1 杨学军;廖湘科;卢凯;胡庆丰;宋君强;苏金树;;The TianHe-1A Supercomputer: Its Hardware and Software[J];Journal of Computer Science & Technology;2011年03期

2 杨永增,乔方利,赵伟,滕涌,袁业立;球坐标系下MASNUM海浪数值模式的建立及其应用[J];海洋学报(中文版);2005年02期



本文编号:2513060

资料下载
论文发表

本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/2513060.html


Copyright(c)文论论文网All Rights Reserved | 网站地图 |

版权申明:资料由用户5d564***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱bigeng88@qq.com