大嘴哥最近看人民日报的新闻,说是“天河”系列超算要升级了,升级之后的系统是原天河系统性能的200倍以上。
200倍,这是一个骇人听闻的数字。当然随后我就这个问题向受访嘉宾求证过,嘉宾表示文章的理解有误,但是可以肯定的是,最新最快的超级计算机正在研发中,而其目标也是超算行业的新的高峰——百亿亿次。
虽然百亿亿次的目标现在看起来还比较遥远,虽然目前我们还只有面向这个目标的“原型机”,但是在未来的某一天,比如2020年或者某个时间点,百亿亿次终将会到来。而面对如此高速而复杂的系统,我们除了要解决“能耗墙”、“应用墙”等难题之外,也面临着如何将系统利用好的问题。
“有没有”和“好不好”,这是一个问题的两个阶段。现在看来,通过天河和神威系列超级计算机,我们已经解决了“有没有”的问题,广州、中科院、长沙、无锡几大超算中心的设备都是行业内首屈一指的平台。但是在“好不好”这个问题上,无论是各大科研院所还是各地的高校机构,恐怕都没有拍着胸脯的保证。
既然叫做“好”,就得有个衡量的标准。就好比我们提到的几大超算中心,许多人都有应用超算的经验,但是机器用得效果如何,则是见仁见智。甚至对于许多人来说,能把应用跑起来,就已经算是胜利了。
超算应用第一步:先把程序理顺了
“我们这些人,讲起基因测序和蛋白质折叠可以头头是道,但是搞计算机,特别是搞清楚那些代码和应用指令,真是太难了”,在我采访过的高校教师中,许多人都有着类似的体会。搞清楚自己的专业知识是理所应当的,但是将这些专业知识转换成计算机能够识别的语言,这显然超出了他们的业务范围。更重要的是,在投身于专业研究的同时,他们还需要抽出大量的时间去进行计算机语言的学习。
这显然不现实,却又无可奈何。我认识的老师中,许多人都是自学了计算机编程的相关知识,也有老师借助于计算机专业同行的支持,完成手头的项目。但是不管怎么说,这都是一件劳心劳力的事情,而且坦率来说这部分内容对于专业的科研应用并非有多大的帮助。能否将项目优化的内容交给专业的人来实现,让程序的优化变得又快又好。我相信,这是许多老师关心的问题。
超算应用第二步:再把程序跑起来
在经一番努力之后,许多老师都已经将原有的专业技术问题转换成了计算机语言和模型,进而可以在超算平台上运行起来。只是在运行的时候他们发现,无论是广州超算或者无锡超算抑或其他平台,想要达到最佳的运行效率还是要对原有的程序进行针对性的优化。
这其中,不同的平台可能采用了不同的加速设备,有些采用的是英特尔的至强融核处理器,有些用的是英伟达的GPU,甚至像无锡超算的神威太湖之光还用的是自主研发的申威平台。因此,对于不同的加速设备,进行优化不仅是程序的需求,更是摆在老师面前的一道难题。当程序真正的实现并行化,让所有的处理器核心都能够高负载运行,这才是超级计算应有的模样。
但是,说起来容易做起来难。那么多行的程序代码,对于大部分不熟悉计算机的老师来说,应该如何优化呢?
超算应用第三步:网络优化很重要
刚刚提到了一位研究蛋白质折叠的老师,他面临的不仅仅是程序应用与模型搭建的问题,更有数据传输的难题。其实对于各个学科来说,需要超级计算机来分析和处理的应用模型都不会很小的量级,这也意味着如果通过网络上传到超算中心的话,可能需要漫长的时光。几天或者几个星期,这也都是有可能的。
更有甚者,类似大气物理、地质勘探等数据,都是以TB级的标准来衡量的,因此数据传输对于老师来说不仅仅需要耗费漫长的时间,而且从超算中心获取数据也需要网络的下载支持。这一来一回,可能比计算本身的时间要多得多,因此许多老师希望能够通过远程可视化操作,实时获得结果的反馈,这样也方便对计算模型进行调整。否则空耗时间不说,这背后都是海量的机时和高昂的费用。
那么,是否可以通过远程可视化化的方式减少等待的时间,对于超大容量的数据,有什么更加高效、便捷的传输方式吗?
超算应用第四步:数据管理怎么办
数据管理可以说是超算应用的终极目标,也是最关键的步骤。在此之前,经过了程序的优化,模型的创建,数据也上传到了超算中心进行运算,可以获得实时反馈的结果。但是如何管理这些结果,如果是一个项目还好说;但是大部分老师都有几个程序同时再跑,如何检测每个程序的运行情况,当程序运行错误的时间如何能够及时得到告警和反馈,这些问题都是老师们特别关心的内容。
其实在IT运维领域,自动化运维的概念已经盛行了好长时间,也有许多解决方案可以借鉴。但是对于超算中心来说,由于平台的特殊性和应用的针对性,仅凭用户个人很难对所有的程序进行有效的监管,在出现错误的时候也很难第一时间获得报警。毕竟老师们还有很多工作去做,一动不动的盯在屏幕前检测系统状态并不现实,所以这个时候,智能化的系统就显得尤为重要。
不仅如此,当一段时间之后,某位老师想了解到自身的应用情况,或者项目结束后需要提供对应的数据报告,这些事情都应该是系统自动完成的。如果依靠人力,依然是非常漫长而繁琐的工作。
如果超算中心也能提供一键生成报告的功能就好了,你说是不是?
这就是绝大部分人眼中超算应用的难题。当然,许多牛人可以解决其中的某一个或者几个步骤,但是从建模到上传,从计算到生成报告,能够完成这些操作实属不易。有句话说,让专业的人做专业的事儿,有家叫做并行科技的公司推出了一款名为“超算云服务”的业务体系,完美解决了广大老师的需求痛点。
不熟悉计算机语言,不懂如何建模?——不要紧,并行科技有专业的技术人员,可以提供724小时的专业贴心服务,包括并不限于应用程序编译、安装与使用指导、计算资源合理分配利用、运行环境配置等内容。当然如果购买了高级服务的话,还会获得诸如检测应用运行使用资源分配、作业问题解答、定制化脚本文件等更为详细的内容。
计算资源优化不给力?——不要紧,并行科技与广州、中科院、长沙、无锡等多家超算机构合作,提供了包括英特尔至强胖节点、GPU加速器、MIC集群等多种计算资源,并且可以实现不同资源之间的共享等一系列应用。当然如果你成为VIP客户的话,还可以获得黑盒测试与黑盒优化、计算平台定制开发等高端定制服务,从源头上把脉超算应用。
网络传输速度太慢怎么办?——不要紧,并行科技已经在北京与广州之间架设并行专线网络,优化用户到超算间的网络链路,并支持电信、联通、教育网等网络运营商。用户可以随时自动匹配或手动选择链路,找到最适合自己的、延迟最低的选择。而针对数据传输的问题,并行科技通过远程可视化技术,让数据在超算处理,图形在本地显示,大幅提升工作效率。
如果你的数据的确是太大太多,并行科技还有一项名为“40TB大容量移动盘柜”的黑科技,简单说来就是通过驻场工程师帮助你把数据从本地安全运送到超算中心,从而实现8小时送达,24小时投入使用的“闪电”效率。貌似之前AWS就是这样运送海量数据的,而且听说效果还不错哦!
多用户海量数据管理,如何实现自动化——说起数据管理,这可算是并行科技的老本行了,早在多年前并行科技推出的Paramon平台就是针对超算管理专业软件,这次升级到云端之后,它更可以提供桌面端和手机端的全方位支持,而且实现了一键便捷作业提交、实时查看作业运行情况、诊断应用性能问题和帐单汇总报告等多重功能,让用户的每一分钱都花得明明白白。
对了,说起花钱的问题,你肯定会问:既然并行科技提供了超算云这么好的服务,可以实现超算应用从建模到报告的一站式服务,那么收费肯定是非常昂贵的吧。其实,大嘴哥最初也和你有同样的想法。但是我从并行科技了解到的是,目前超算云服务的收费标准与超算中心和各大云平台是相同的。换句话说,无论你是单独购买超算中心的机时还是通过并行超算云服务来购买机时,花的钱都是一样的,一样的,一样的。
那你可能会问,都是一样的费用,并行科技靠什么赚钱呢?这个问题回答起来有点难。但是想想各大补贴的APP,这难道不就是流行的互联网思维吗?
曾几何时,宋丹丹“把大象装进冰箱总共分几步”的问题,结果让人大跌眼镜,出乎许多人意料的是答案就是这么简单直接。如今,看似复杂的超算问题,在并行科技的超算云面前都已经迎刃而解。如果你是用户,同样的预算下,你是选择劳心劳力、繁琐不已的老方法,还是愿意轻装前行、一步上云呢?
超算应用总共分几步,这下你心中应该有数了吧。