美文网首页CFD 计算流体力学相关
开源CFD代码----HiFiLES使用小结(下)

开源CFD代码----HiFiLES使用小结(下)

作者: 咋家 | 来源:发表于2017-05-27 17:07 被阅读165次

    第三十五章

    执大象,天下往。往而不害,安平太。乐与饵,过客止,道之出口,淡乎其无味,视之不足见,听之不足闻,用之不足既。

    前言

    上一节介绍了CPU版本的HiFiLES安装和运行,不过直接运行时会出错,这一节来填这个坑.另外,根据个人的使用体验,CPU版本的运行计算速度极慢,在此将会说一下GPU版本的编译方式.

    正文

    好了,如果你按照上节的教程成功的编译出CPU版本的程序,那么你已经成功了一半,接下来就考验你程序水平了,不过,因为本人技术太菜,只停留在应用的层面上,高级的东西咱也不懂,所以接下来还是咋用的问题.
    上回说到测试程序时运行下面的算例会报错:

        ./HiFiLES    input_cylinder_inv
    

    具体的会出现下面的错误:



    说是在什么什么里找不到什么什么,那就得到什么什么里去找什么什么才行,经过查找,错误原因是文件路径的问题.接下来你要到程序文件夹src里找到下面的几个文件:


    然后一个一个打开,找到下面的类似位置:


    把filename后面的位置改成程序文件夹data里面相对应文件的路径,绝对路径.每一个这样的地方都要修改,其实具体的你可以根据程序报错的原因来查找这些错误.有一点需要说明的是,修改完之后一定要重新编译一下才能运行.
    之后就能进行计算了,至此也算是完成CPU版本的一些基础工作了,具体的软件中关于物理模型问题之类的设置自己去看软件的说明吧!下面是我的一个算例.但是,前面说过CPU版本的速度是很着急的,下面来说下GPU版本的编译.

    GPU版本编译

    GPU版本自然得要GPU的支持,要求是用英伟达的N卡,且需要安装一个加速包CUDA,下面先来说下这部分如何处理.

    1、安装CUDA

    不知道这是什么的,赶紧google一下.这里说下我是怎么的一个流程,安装CUDA首先得要Nvdia的驱动才行,也就是说先得有驱动来使用显卡才行.不过如果你的笔记本是核显加独显,安装完Ubuntu系统是不会自动安装Nvidia的驱动的,具体的可以这么做.在Ubuntu系统里打开系统设置找到软件和更新,里面有个附加驱动选项,你可以在这里选择Nvidia的驱动进行在线更新,这种方式比较简单.当然你也可以直接安装.具体的自己搜一下.


    接下来就是安装CUDA包了,根据程序的说明,他使用的是Ubuntu14.04+CUDA6.5的组合,在这里我使用的是Ubuntu16.04+CUDA8.0的组合,具体的差异也不是很懂,反正能用.关于CUDA的安装还是比较麻烦的,这里我不细说了,附上个网址参考下,就提醒一点因为前面安装过显卡驱动了,在安装CUDA时遇到更新驱动时一定选NO.
    2、修改配置文件

    假设你已成功安装完CUDA包并测试没问题了,接下来就可以编译程序了.老规矩修改配置文件,如下:


    在这里只说明三点;

    • 将1处给修改成GPU版本的,其它的还是按照CPU版本那样设置
    • 2处为你的GPU架构是什么类型的,例如,我的显卡是GT755M的,查阅知道是开普勒架构的,根据说明那里应该是30,其它的请自行说明
    • 将3处改为你安装CUDA包的路径即可
    3、编译与测试

    完成上面的工作之后,就可以编译了,编译的方法和CPU的流程一样,具体的参照上一节的说明,然后就可以测试是否能正常运行了.提醒一点如果测试时出现下面的错误,就是你的显卡架构后面的参数没有选择对,所以还要仔细查看下自己的显卡.

    总结

    • ** 在使用GPU版本的时候,会出现下面的问题(就我目前的状况来说,以后还不知道会怎样),当将testcase里的算例拷进去进行计算时,竟然发现算出的结果没有变化,输出是下面那样的**
    • 经过使用发现,GPU的可以计算四边形网格,其它的总是出现各种问题
    • 整个的程序只能算低雷诺数的工况,不知道是我网格的原因还是怎么回事,雷诺数一高就出现发散,不知道以后会怎样.
    • 关于后处理部分,一开始用的是Paraview,后来做视频不太方便,然后就在Linux下装了个Tecplot,具体的可以参考我前面的文章。
      最后,来个最终的计算结果,要是有什么问题的话欢迎随时交流.
    关注“咋家”,给不一样的自己

    相关文章

      网友评论

        本文标题:开源CFD代码----HiFiLES使用小结(下)

        本文链接:https://www.haomeiwen.com/subject/jyvqfxtx.html