0%

流水账-ASC15超级计算机竞赛与近期总结

记个流水账,就当是日记,并非总结技术。

假期一直到3月中下旬一直都在弄并行计算方面的事情。虽然之前和班上同学一起打算水一水信息安全竞赛(他们打算做安卓方向,但都没有基础,正好我上过学校开的安卓课程,可以帮帮他们),而且假期有那么一周确实埋头做了很多事,但是最后大家都水过去了(我是在看并行计算的东西,其他人在我研究完Xposed框加后就啥都没往下弄了)。结果可想而知,开学要选指导老师,我们因为没有成品,而且老师问了几个很切中要害的问题(大二有没有时间做这个,学习成绩怎么样,做项目有过需求调查没有,点子有人做过没),于是大家就放弃了。

ASC15超级计算机竞赛听起来很不错,但是我们参赛学生并没有获得很多学院和学校的支持,因为这个竞赛才举办几届。去年寒假我就听说了有这个竞赛。本来想去,但是当时还是太听话,遵循学校的规定第一学期不带电脑,所以C和C++靠的是C4Droid学的。这样的水平当然不会贸然参赛。现在想来遵循校规实在毫无必要,因为我平时不用电脑来打游戏,不带电脑也只是怕辅导员查而已(其实若被查到编程什么事都不会有)。若是当时带了电脑,现在不知道技术水平会是什么样。有的时候就是应该做自己想做的事,不去考虑别人想让你做什么

今年感觉基础可以了,偶然机会找到了校竞赛的群,加了进去找老师报了名。当时离期末停课还有一个月,感觉还来得及准备。以前折腾过一段时间Linux,写程序基本上C++多,所以看并行计算的东西没什么问题。当时让我负责的是MPI这部分(真是太看得起我了,不进决赛根本用不到MPI的)。也许以后有时间我会总结MPI和OpenMP编程。

假期搞了一周的Xposed框架,然后大部分时间看并行计算。主办方在北京弄了一个2天的培训,我和另外三个小伙伴自费过去听的。题目拿到了以后第一件事就是搜索串改并那题的背景,第一天居然就翻到了论文!春节那几天还是偷了点懒,开小差去弄QT去了。

假期期间整个团队的效率其实很低的,开学后发现大家基本都对题目没啥进展。不过经过讨论还是有些眉目的。不得不承认我们的组织还是有问题,应该多找人参加,制定学习计划。本来6个人的团队,参加开学讨论的只有4个人了,而且除了我另外三位第一年都参加过比赛(比赛要求5人,最后几天我们又找来了一个人)。另外,老师也没申请到学校的设备,所以只能ssh到主办方提供的远程平台上测试。不过大家只管干!而且留下来的人确实都挺厉害:带队的是学校里非常活跃的技术牛人,一起和我做串改并的是校ACM队员,还有一位貌似非常熟悉计算机硬件体系,我自己好歹第一年也拿了个国奖:)。所以说能坚持做一件事的人必有过人之处。

一直到初赛截止前,大家都在忙。截止的前一天晚上,我们把英文的方案提交了上去。

然后等待结果出来,发现是第18名,可是只有16支队能进决赛。。。http://www.asc-events.org/ASC15/index15.php

老师对这个结果还算满意,因为比赛的条件并不好。听队友说去年只是临近截止3天前才开始干,只弄了三天就交上去了,当时还都是大一。准备写文档时我看了去年的方案,发现串改并只有9倍多的加速。然而今年的结果是51倍的加速,进步很大。老师向主办方问了,大概也是后面串改并做的好,前面搭建超算平台的设计方案失分多(因为大家没设备,只是简单分析了一下)。

总的来说我们都尽力了,只能来年再战了!

尽管没进决赛,我还是学到了挺多东西。我觉得一个团队要做成一件事情必须要有凝聚力,不管发生什么情况都不会散才行。这凝聚力的来源就是大家对这件事本身的热情。如果团队中的人把这件事当成自己的很重要的事去做,而不是只想水过去,那么即使条件很不好,也可以把事情做得很精彩。