APP下载

中国高性能计算教育中的挑战

2017-09-06安虹

民主与科学 2017年4期
关键词:高性能编程竞赛

安虹

大数据时代,中国的高性能计算教育面临着更大的挑战。尽管我国在高性能计算机系统研制方面已经占据世界领先位置,但从面临的挑战来看,我们在基础教育方面还有很大的欠缺。

一、高性能计算技术只能走自主创新的发展道路

过去20年,我国高性能计算技术的发展走过了一段超常规发展道路,超算技术得到迅猛发展。面对这一成绩,美国劳伦斯伯克利国家实验室的副主任Horst Simon评论说:“中国已经意识到了高性能计算在建模与模拟上的价值,而且增加了模拟运算的数量,并打造了对美国来说有着强大竞争力的设施”。

中国在超算领域的优秀表现,直接导致美国在2015年4月宣布,禁止英特尔公司向我国的四大超算中心出售“Xeon Phi”芯片,为此我们承受的直接后果是“天河二号”升级暂停。美国的算盘是希望以此控制中国高性能计算的发展,实际是限制中国的科研发展,这其中更包含很多其他方面的因素。

2016年6月19日,“神威·太湖之光”横空出世,荣膺TOP500榜单的第一名,这套系统的最大亮点是采用了我国完全自主知识产权的申威众核芯片。有专家称:“中国超算不怕芯片限售,曙光、神威、天河等系统的研发正是在禁运和封锁中不断壮大起来。实践将会证明,外国对中国产品和技术的禁运,反倒‘逼出中国发展超算核心技术的巨大决心和潜力”。我们用事实证明了中国在超算系统研发领域的实力,也证明了高性能计算技术只能走自主创新的发展道路。

二、适应未来交叉学科领域对高性能计算创新人才的需要

进入21世纪,工艺技术的进步和计算机应用的变化推动了计算机学科迅猛发展,其内涵和外延不断拓展和丰富,与计算机相关的学科和研究领域也在不断增加,各种计算机理论、技术和应用层出不穷;计算机学科不断与其他学科交叉,在完善自身发展理论和技术的同时,不断拓宽计算机的应用领域,引发世界的深刻变革。

未来,计算机科学最重要的发展是它在各学科和工程中的应用。例如,医学的重大突破很可能是在生物学家、化学家、计算机科学家跨领域的合作研究下取得。因此,未来计算机学科、科学和工程学科的发展,需要在高性能计算领域培养大量与计算机交叉的创新人才。实践证明,“创新型人才必须在创新实践中培养”,将一流教学与一流科研相结合,是高性能计算这一交叉学科创新型人才培养的必由之路。

三、通过大赛提升高性能计算教育水平

国际大学生超算競赛(Student Cluster Competition,简称SCC),每两年一次,与欧洲的国际超算大会( International Supercomputing Conference,简称ISC)和美国国际超级计算机大会(The International Conference for High Performance

Computing, Networking, Storage and Analysis, 简称SC)同样受到关注。SCC竞赛全面考察参赛队员在设备搭建、软件优化、LINPACK、HPCG和HPCC测试等方面的能力,最终经过现场答辩,评选出获奖队伍。目前,SCC已经成为一场挑战大学生临场智力发挥和心理承受极限水平的世界顶级赛事。

中国科技大学组建超算“鸿雁队”,连续多年参加上述赛事,均取得优异成绩,特别是在SC16大会上举办的大学生超算竞赛中包揽了总分和最高Linpack性能两项冠军。在历时一年左右的参赛准备以及竞赛过程中,学生的知识储备、心理承受力等素质均获得极大提高,不仅学到最新的高性能计算技术,而且在系统软硬件的设计和开发中也获得极大的能力提升。大赛为大学生的创新能力培养提供了强大的驱动力,对引导学生提高学习兴趣,激发创造热情,思考未来职业理想,培养创新素质如跨领域多元化思维、自我表达、沟通合作等方面的能力起到了非常积极的作用。

通过参加比赛,指导老师对高性能计算有了更深刻的认识,摸索出超算人才培养的新规律。老师们更加懂得如何引导学生兴趣;更加理解将来即便不做系统设计,也必须深入了解系统才能用好高性能计算机;体悟到高性能计算领域的教学新思路,可用于创新教育方法,可应用到实践教学中去;同时还可以发现计算机系统设计的新课题,对于开辟新的研究方向大有裨益。

四、大数据时代下高性能计算教育的新挑战

大数据时代,中国的高性能计算教育面临着更大的挑战。

第一个挑战来自当代多样化的计算机体系结构设计。“现在的计算机系统结构非常复杂,层次多、变化快,同时复杂的变化无法及时地反应到大学课程中来,对教学提出新要求。

第二个挑战是编程环境纷繁复杂。目前的并行编程语言和环境有MPI、OpenMP、CUDA、JAVA、OpenCL、HMPP、OpenACC等几十种。随着大数据和云计算的发展,并行编程模型和环境工具越来越多,作为教师,需要从中做出甄别并讲授给学生,但很多人感到难以快速跟上技术发展的步伐。

第三个挑战来自编程模型与硬件之间模糊的对应关系,即没有一个统一的编程模型。我国计算机本科教育中对学生并行编程能力的培养不够,全国每年约10万毕业生中能够编写并行程序者寥寥无几。随着计算机系统结构的变代,编写并行程序应该成为计算机专业本科教学的必修课。

尽管我国在高性能计算机系统研制方面已经占据世界领先位置,但从面临的挑战来看,我们在基础教育方面还有很大的欠缺。

五、以赛促学,以赛促教

借鉴国际上通过SCC竞赛促进高性能计算创新实践教育的经验,结合中国高校高性能计算(简称HPC)师资严重缺乏,应用水平低的基本国情,中国计算机学会(简称CCF)高专委发起并设立了全国并行应用挑战赛(Parallel Application Challenge,简称PAC)。PAC大赛每年在中国的高性能计算学术年会HPC China上举办,受中国计算机学会高性能计算专业委员会指导,旨在通过提升“理论实践相结合”的能力,寻找最佳应用,发现顶尖优化人才,助推超算发展,实现强国梦!

PAC大赛首创于2013年,每年举行一届,选手来自全国300余所高校,参赛队伍613支,2500余名师生参与。大赛题目涉及内容非常广泛,包括能源、气象、计算流体力学、化学、粒子模拟、宇宙暗物质、航空航天、图像动画、金融分析等,涵盖领域涉及高性能计算及大数据分析领域。选手们通过参加PAC大赛,将课本知识与实践应用相结合,激发学习兴趣,提升创新能力,培养了并行计算的思维和学习方法。

结合专家走进高校授课的活动,竞赛有效带动了国内高校并行计算课程的普及,有越来越多的教师加入并行与分布式计算的课程建设中,大家在教材、课程资源、实践等环节不断积累经验,期待形成更多优秀的课程。

如今,PAC大赛已经成为全国范围内(含大陆、香港、澳门、台湾)规模最大的并行应用挑战赛,并逐渐向建立高性能计算产业、学校、研究机构三方合作的生态系统方向发展,实现了以赛促学、以赛促教,促进了并行计算教育在全国的普及。通过多年的教学和参加竞赛,我们深刻体会到,在高性能计算创新实践教育方面,当前形势下的高校与企业合作的模式非常有必要,学生只有通过实践,才能真正搞明白什么是高性能计算。

猜你喜欢

高性能编程竞赛
高性能混凝土不同配合比下的性能研究
玩游戏学编程,Blockly Games上手玩
纺织机上诞生的编程
数学潜能知识竞赛
编程屋完成数百元万天使轮融资
高性能混凝土开裂成因及控制要点
学编程,先画画
创新思维竞赛(3)
中国E级高性能计算机原型系统正式进入研制阶段
创新思维竞赛(6)