simpop

普通会员

大咖访谈之国产开源软件OneFLOW创始人谈CFD软件架构演变

赫新:2003年博士毕业于空气动力与发展中心,在中心主要负责高超声速数值模拟和软件开发。于2017年离职后一直从事OneFLOW的开发与探索。


OneFLOW是一款国产的开源软件,开发语言为C++,是一款开源的非结构CFD求解软件,采用了多学科求解的架构,比较方便扩展,因此具备了工程应用和研究的潜力。


陆陆在听到国内还有博士忙活着做开源软件的时候就充满了好奇,既然具备这个开发一款新的软件的能力,为什么要往开源这个方向走呢?


带着问题,我们迎来了大名鼎鼎的第二个游戏少年CFD大咖 -- 赫新博士。


陆陆:赫博士,在您转业出来之后为什么想用这么大的时间和精力去做一款开源软件呢?


赫新:我在CFD软件这个行业也算是个“老人”了,之前也是在我们国家最顶级的空气动力中心工作。一个很重要的原因是对这个行业有很深厚的感情,我自己也比较喜欢琢磨这个专业的事儿。目前市面上商用软件还是用的比较多,普及非常广。甚至盗版还很猖獗,这是很不对的,应该严打盗版,像一些知名的商用CFD软件也会对使用盗版软件的企业提出巨额赔偿。这些都是无可厚非的,但是任何事情都有个性价比,国外的软件虽好,但是太贵就给国产软件留下了空间,加上严打盗版,开源软件必然发展。


陆陆:可是开源软件意味着免费啊,那您做OneFLOW是靠着您的情怀啊?


赫新:情怀是一种动力吧,任何事情的坚持一定是对这件事的喜爱才能支持的。但是不管是开源也好,闭源也罢,软件市场在未来应该免费是主流,盈利都是靠服务,盗版只是先走一步。


陆陆:那您这款软件是为了之后承接项目?


赫新:我目前做的不是具体的计算,计算方面都是找专家合作。目前关注的是软件开发,验证专门找人做。


陆陆:之前听您提起过软件架构演变的事情,也是在您开发这款软件的时候的思考吗?您能先聊一下关于这个软件架构演变的事情吗?


赫新:软件的架构就是指软件背后抽象的东西,看不到的东西。如果把软件比作人的话,架构类似于人的内在,比如气质,行为准则之类的抽象的东西。根据不同的时代。如同世界上没有普适的行为准则和道德规范一样。这背后的一个大的因素就是互联网时代的到来和万物互联,使得软件的迭代加快,是动态的而不是静止的,是全生命周期的,现代软件已经不强调版本,而是持续更新。如同一个人一样,是终身学习,而不是只是在学校的特定阶段。在这个背景下,软件如同一个人一样,要经历小学、中学、大学、工作这些阶段。这不同时期的软件架构是不同的,如同小朋友和成人的道德准则是不同的,现代软件要能在成长的过程中完成这种进化。这就是架构的演化,架构演化是具备一定设计模式的,好的设计模式可以比较容易演化。当然,好的架构都是从实践中总结出来的。


陆陆:那这个实践是指软件在工程项目中的运用吗?


赫新:对,实践就包括但不限于一些工程问题解决的经验,和研究过程中遇到的问题。大的方向要选好,比如一个小朋友,将来要学文科还是理科?要当艺术家还是工程师?如果遇到了不是理想的状态是不是有什么预案?会不会崩盘?


陆陆:那这个架构的演变和现在热门的人工智能也会有关系吗?


赫新:当然啦,有经验的人设计的架构是有规律可循的,人工智能可以更好地总结和提升。


陆陆:那这个软件架构的演变来说的话,市面上已经有一些软件已经在做这个事情了吗?还说我们是说针对目前正在研发的软件的一个建议?


赫新:这个大家都在做吧,一般互联网公司需要随时响应变化的都多少有这个需求。对于科学计算来说,还没有这么做。大家一般的方式是先写一个代码。随着功能的增强是在不适应了再推到重来,重新设计。随着软件越来越大,功能越来越多,这种方式的成本也就很大,不适合现代软件的发展。这个事情的本质是把软件看成一个生命体,生命体本是不能推倒重来的,是在不断成长的过程中去适应社会(需求)。


陆陆:那OneFLOW在设计的时候是否有考虑软件架构演变的事儿呢?


赫新:那当然啦。OneFLOW的设计就是考虑了架构的演化。其本身是一个多学科求解架构。目前解决的是CFD计算的一些问题。但是这个架构将来可能会处理流固耦合,电磁计算等其它科学计算的问题。在将来,会演化成科学计算的一种操作系统,这些都需要架构演化。软件本身并不特殊,背后的架构本质是一种数学抽象,这种抽象在社会中都有很多可以借鉴的地方。有时我在设计模式的时候,就需要考虑现时世界是如何处理类似的问题的。


陆陆:OneFLOW这款开源软件对比市面上其他的、同类型的开源软件有什么优势吗?


赫新:目前为止的开源软件不多,主要有OpenFOAM和SU2等。OneFLOW这个软件在架构上和这两款软件都有所不同,从功能上更接近SU2。软件的优势目前还不好说,如果按照我的理解来说就是可以作为国外开源软件之外的一个选择。随着时间的发展,会抽象成形成类似科学计算操作系统的东西。这是目前市面上其他软件所不具备的。


陆陆:OneFLOW目前已经在测试阶段了是吗?


赫新:是的。一些简单的算例都已经测试过,下面会算一些复杂的算例。


陆陆:什么时候可以对大众开放呢?


赫新:今年之内吧!争取上半年!我们这个在天河二号和太湖之光上都可以部署。


陆陆:那可以在我们陆面体部署吗?


赫新:我已经部署成功啦!还完整地跑完了一个算例!结果正确!


1.jpg


2.jpg


3.jpg



陆陆对今天采访的总结就是:坚持做一件事需要热爱,但是前提是大方向要对哦!