CFD/CAE云计算?在天边也在眼前

这里是“CFD小学”,今天打算聊个长点儿的故事。

我记得那是2008年夏天,北京奥运还没开幕,股灾洪灾接踵而至。我还用着不能上网的诺基亚手机,跟宿舍的兄弟伙玩着CS。当时我正在计算机课堂上趴着睡觉,迷迷糊糊地听到老师打了这么一个比方:

我们每个家庭都要用水、用电,但每个家庭都不需要自己建水厂、电厂,我们只需要水龙头、插座这样的一些“接口”,就能借助市政管网和电网来获取水和电。如果,计算机的CPU、硬盘、内容也可以看作跟水、电一样的“资源”,我们是不是也没必要人人都配一台主机,而是只需要“接口”和“网络”就够了呢?

 

那个时候,云计算的蓝图依稀就是这样描绘的。只需要显示器、键盘、鼠标,接上网线,所有的计算都在云端完成。我们的应用程序统统安装在云系统上,数据资料也统统存在云盘上,计算和存储都被称之为“服务”。我们再也不用追求什么“高配”的电脑,不需要多快的CPU、多大的硬盘,只要网速够快,我们连Windows都不需要,只要有浏览器就可以,因为一切都在云上。

然而,九年过去了。“云”好像还是远远地挂在天边,看得见,却摸不着。真正改变了世界的也根本不是什么云计算,而是移动互联网。我们没有抬着头去看云,而是低着头看着手机。电脑的配置并没有降低,甚至手机都搞起了“8核16G”。计算资源在物理上没有更集中,而是更分散。谷歌打成了的算盘也只是Android,而不是什么Chrome OS。

九年过去了,我从学校毕业,搞起了CFD/CAE。这是个明显对计算资源有刚需的领域。我和同事们永远在抱怨电脑不够快,一个算例跑上十天半个月的事儿司空见惯。我们绞尽脑汁优化模型、网格,在准确性和计算量间不断地取舍。我们自己搭局域网,建集群,我们不得不把大把的注意力从核心业务上移开,去做“利其器”的计算能力基础设施建设。我们的老板们每天盘算着,给大家升级一下工作站到底划不划算。我们每天羡慕着,隔壁老王公司的新机器真快真好用。

人们好像都忘了,这样的计算,原本可以托管在云上。

 

中国有个人尽皆知的程序,叫12306,就是火车票的那个。最开始的几年只能买零星几趟车的票,否则春运的时候,几亿人一起登陆,瞬间就卡死了。可现在不一样了,12306现在可以买全国几乎所有的火车票,可以随时改签、退票,甚至都不担心“抢票软件”反复刷票造成的恶性流量。据说,这背后就是阿里云在提供支持。

我很早很早就在想,如果把阿里巴巴的服务器借我用一下,我这百八十万个网格的CFD程序是不是分分钟就跑完了?后来我真的去买了阿里的云服务器,也试了亚马逊的EC2,结果发现,这玩意儿更像是从前的虚拟主机、VPS之类——初衷是用来做网络服务器的,跟我们制造业理解的“计算”仿佛并不是一码事儿。

如果您也对这个好奇,也可以试试(AWS、Azure、阿里云腾讯云都可以),在上面装个Ubuntu,远程登陆跑个OpenFOAM,甚至在Windows Server上装个Fluent……这事儿是可行的,但也没方便到哪儿去,关键这服务器的性能也没有那么吸引人。

那么有没有其他办法呢?比如阿里云,自己有没有可能,装好Fluent然后开放出来给用户远程使用呢?估计不可能,因为Ansys会不愿意,这等于把他的一份产品转手卖了若干份,铁定侵权了。

那么Ansys会不会主动出击,把自己的软件做成在线的呢?也不太可能。道理很简单:单机游戏如果能卖钱,何必要做网游呢?只有单机版不好卖了,开发商才会想做网络版,探索新的盈利点。做网游的,还能卖头像、卖皮肤。Ansys如果搞个Workbench Online的话,卖什么呢?头像皮肤都不合适,只能卖计算资源,也就是用多少CPU、多大硬盘,就收多少钱。但计算资源又不是他们自己的,是提供服务器的,亚马逊或者微软的。如果用户用Fluent开始按时长和计算量收费了,那赚钱的就不只是Ansys一家了。即使还可以通过卖账号或者功能来盈利,但从前我单机版卖的好好的,边际成本无限趋近于零,干嘛要费劲儿转型,还跟你们分钱?

那么Ansys有没有云计算呢?也得算是有,官方称为“云计算许可模拟”,但还是要License Manager的,也就是说,这只是具备“联机对战”功能的单机游戏,核心还是零售客户端。Ansys官网说“采用云不需要您转换为按使用付费的模式”,这话说起来是照顾制造业本身的使用习惯,潜台词更是要保护自己的传统盈利渠道。说的更直白一点儿:反正软件我是按份卖的,你爱买不买,你机器慢关我啥事儿?你去找HP和IBM啊……

九年来,云计算的概念一直都在,许许多多的互联网产品也开始加上了“云”字儿,但是站在最初对云计算的理解来讲,什么“云邮箱”、“云盘”、“云音乐”之类,根本就是“伪概念”。因为这些原本就是服务器端程序,非要自称为云服务,就像歌手要自称是“唱歌的歌手”一样多此一举。

没有人不知道Photoshop,但是不知道有多少人注意,Photoshop从13年开始改名了,原来叫Photoshop CS,后来叫Photoshop CC。CC的意思就是Creative Cloud,言外之意:我们Photoshop从此以后是云软件了。但其实呢?软件还是跑在本地,唯一的区别是从前卖软件像卖书,买来就是一本,现在是“订阅”,像报纸一样,得花钱续订才能用。话说Ps改名的时候,Adobe被自己的好基友微软一顿鄙视,微软说,你们太着急啦,看看我们,虽然出了Office 365(订阅),但是Office 2013(盒装)也照样保留啊。

 

其实,不论是Ps CC、office 365,还是Ansys的云许可,说到底都只是销售模式的变化,没有涉及到技术层面的变革。如果代码都没有放在服务器上,“软件即服务(SaaS)”就成了只有市场部门才关心的概念,在技术人员的眼里,他们的产品还是规规矩矩的客户端程序,踏踏实实运行在Windows和Mac上——Apache是什么?直升机吗?

 

然而,很少有人会否认,如果真的能将云计算运用在CFD/CAE,或哪怕任何工业计算上,几乎都是能带来效率的提升和成本的降低的。特别是对于中小型企业、科研机构等,自己买硬件开销不菲,需要的时候没有不行,真买了又未必天天都用,按需获取计算资源光是想想就十分诱人。

既然如此,具体到CFD/CAE上,目前究竟有没有什么靠谱的办法,来实现云计算呢?答案是肯定的。

 

如果说,商业软件只要可以通过卖licence的赚钱,就不必要把自己做成在线版的。那么,有些计算代码天生就是开源的,跑在哪儿都免费,这些代码就首当其冲地成为了服务器端开发的程序内核。在CFD领域,最典型的就是OpenFOAM。如果你能租一块性能不错的云服务器,配置好OpenFOAM使用环境,并且提供一个供远程操作的界面,那么用户只需要在浏览器上登陆你的网站,就以租用你的云来进行计算了。不管你的云服务器是从哪儿买的,都可以以更高的价格卖给用户,因为你打包了计算环境在里面。而你的客户呢?他们完全不需要额外采购任何硬件,也不需要自己维护软件环境,什么时候需要计算了,只要登陆你们的系统,按使用时间缴费就是。这样一来,客户省了钱,你们赚了钱,背后的逻辑只有一条:计算资源的利用率提高了。

 

事实上许多CFD云计算服务商就是这么做的。在国外有Sabalcore、Rescale、Simscale,国内的有EasyCAE、云格物等。登陆这些系统以后,你可以上传自己的几何模型、网格、甚至整个OpenFOAM的case文件夹,进行一些简单的配置,然后关机睡觉,让云服务器来帮你计算。计算完成后,你可以下载计算结果,也可以直接远程进行后处理。

 

 

尽管画面很美,但这样的应用短期内似乎仍不足以在工业领域形成规模。一方面出于安全性的考虑,CIO们好像最多能够接受外包私有云项目,全面转移到公有云总觉得有些不踏实。另一方面,已有的硬件投资已经形成了固定资产,至少需要一个生命周期来慢慢消化。至于科研领域,长期以来仿佛已经习惯了将计算资源考虑为瓶颈,总是有办法退而求其次地在建模上入手找到解决方案。

无论如何,技术和市场总是在推动着资源以更为合理地方式进行配置,从而在宏观上提高生产效率。想必每一位从业人员,也都希望能尽可能地降低硬件采购和维护的成本,提高计算的稳定性和效率,或者至少不用再为给工作站装系统或者办公室停电而伤无谓的脑筋。

最后,我想推荐一下杭州远算科技的产品“云格物”,点击左下角原文连接,可以跳转到他们的官网,免费申请试用。为了明确这不是一篇软文,我会诚恳地告诉各位,这个产品目前看起来只是个demo,如果您不是仅仅想新鲜一下的话,前文提到的其他平台可能会是更好的选择。或者,如果您想要亲自加入这个可以改变世界的行业的话,到远算科技去上班,相信也是个不错的选择,他们官网有招聘信息。

CFD小学与您一起努力。

点赞