新闻 图说CPC赛事通知新网直通车 新网会客厅

CPC故事丨太湖神鼋队

浏览次数:38 发布时间:2019-10-15-09:10:29

队伍名称:太湖神鼋队

指导老师:江南大学柴志雷教授

我们是来自江南大学的太湖神鼋队,这次参加CPC比赛是上学时期难得的经历,也正是这场比赛让我们对超算以及神威太湖之光有了更深刻的认识,以前觉得这些离自己太远,也不是很清楚这些研发的具体意义,但是通过比赛的赛题,尤其是复赛赛题,天体物理的具体应用,让我们更加理解了国家对超算的研究和超算对国家发展的意义。

这次比赛能取得银奖,让我们非常开心。我们的参赛过程其实并不顺利,初赛期间由于我受伤后只能躺在床上,队友需要经常来我宿舍进行沟通讨论,也给我了很多的照顾,幸好我们可以成功参加复赛。在比赛的进行中,最郁闷的可能就是讨论许久的算法无法正常运行或者加速效果很差,最开心的也是大家想出的点子可以成功的实现,对于优化手段的讨论不仅是让我们的比赛从成绩逐渐进步,逐渐的发现问题并去查询和询问的过程也让我们知识量逐渐提升。

在初赛期间,由于英雄榜上大神的成绩,我们讨论最多的就是他们为什么会这么好,用了什么样的方法,促使着我们想更好的算法,学习更深层次的优化,从而让我们学到了更多的知识,因此我们觉得英雄榜的意义很大,大神们的成绩不断地促使着我们学习,使得我们不会因为取得一点点的成绩就会停止不前,复赛的赛题是我们在平时比较少见的,有着实际意义的应用于具体领域的大规模程序,对于函数的热点分析和函数之间的联系,就让我们研究了很长时间,而且和初赛不同,初赛有很明确的优化位置,但是复赛中,整个程序都是可以优化的,这让我们的工作也变得很艰难。从最初的即使找到热点函数也无从下手,到随着优化方法的一点点实行,运行时间逐渐下降,最后到比赛结束,我们收获的不仅仅是并行优化上的知识,还有怎样去做优化的思路和能力。

感谢CPC组委会的精心组织,让我们可以在学校期间就接触到国产超算平台,并在比赛中学到很多并行的知识。在这里分享下这次比赛经历的经验教训,希望明年参加比赛的同学可以更上一层楼。

1. 学会使用工具,神威论坛和手册上提供了很多工具,不仅是查找热点函数,还有调试功能、记录从核代码段运行时间等等。这些工具对于做优化有很重要的作用,感谢论坛上大佬们的开发;

2. 找bug的时候一定要静下心,有的时候写完的程序效果不好或者运行不通,总是去怀疑是不是思路上有问题,但很多问题最后发现都是因为写代码过程中一些小点上写的不对,所以首先要一行一行的检查,是的,一行行查,彻底排查掉手写上的问题再去怀疑思路上的问题,如果问题不是写的代码上,一定要去查手册,最开始就是因为手册查的少,耽误了很多时间;

3. 团队的任务分配和合作,最开始比赛的时候我们可以说是毫无配合,只是大家讨论的时候做了下任务的分工就去各忙各的了。有时候什么连队友做了啥都不知道。但是随着比赛的进行,我们有了更多的交流,也意识到了团队合作的重要性,因为有时候由于自己长时间盯着一个问题,思路会变的狭隘,这时候队友的思路会很有启发的效果,并且大家在一起的交流讨论也会使自己从队友身上学到很多知识和处理问题的方法;

4. 适当放松下,脑子僵住了,就不要强行研究了,有时候真的会觉得一点思路都没有,心情自然会很烦躁,这时候一定要去嗨一下,大家一起浪一浪,绝对比坐在电脑前面冥思苦想更有用;

再次感谢这次比赛。真的让我们的能力增长了很多,也对国家超算有了更多的认知,预祝下一届的参赛队们都能取得理想的成绩,学到更多知识,祝愿国产CPU并行应用挑战赛越办越好。祝愿国家超算蓬勃发展。

优化介绍

优化一:为了避免写冲突,构建了一个结构体保存粒子包的信息,以及该粒子包受到其余粒子包的影响次数,同时构建任务列表,存储影响该粒子包的粒子信息;

优化二:.采用直接在从核中查表+多项式的exp函数及erf函数;

优化三:将MPI与计算过程分离后将MPI整合,并将其隐藏在从核计算中;

优化四:使分离出来的计算过程中的引力计算屏蔽其遍历。


版权所有 国产CPU并行应用挑战赛