Skip to content
  • 最新
  • 版块
  • 东岳流体
  • 随机看[请狂点我]
皮肤
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(不使用皮肤)
  • 不使用皮肤
折叠
CFD中文网

CFD中文网

  1. CFD中文网
  2. OpenFOAM
  3. 有关Openfoam在超算并行运算的问题

有关Openfoam在超算并行运算的问题

已定时 已固定 已锁定 已移动 OpenFOAM
18 帖子 5 发布者 14.3k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • 队长别开枪队 离线
    队长别开枪队 离线
    队长别开枪 超神
    在 中回复了 Irisch 最后由 编辑
    #9

    @Irisch 在 有关Openfoam在超算并行运算的问题 中说:

    我分了24份,每一份用4个核算,就是96个核

    这部分没看明白,不懂一个网格分区是怎么用四个核(线程)进行计算的。看日志时间步长到了1e-8量级了,网格尺寸可能在垂直于速度矢量的方向上过小了。你可以试着用粗网格算一下看看结果怎么样,你导师说换网格尺寸不行又不影响你自己使用粗网格验证一下,你要有自己的想法。

    I 2 条回复 最后回复
  • I 离线
    I 离线
    Irisch
    在 中回复了 队长别开枪 最后由 编辑
    #10

    @队长别开枪
    可能是我没表达好。我先是分了24个区域在decomposePar文件里面,然后在超算上预定运算资源的时候,预定了4个nodes,每个nodes上有24个cpu,然后制定每个nodes运算6个task,一个task对应一个区域分区,最后指定每个task(区域)使用4个cpu来进行计算。这样的话就是4nodes6tasks/nodes4cpus/task(区域)=96cpus,是这么得出来的。
    我自己已经完成了一个cm级别的非常粗网格的计算,大概只有5000个网格的算例,结果确实是我们想要的,这个已经做出来了,计算速度很快,用自己电脑单核跑一下大概5个小时就出结果了。结果的效果很好,所以现在就需要做准确的精细计算了。

    队长别开枪队 1 条回复 最后回复
  • I 离线
    I 离线
    Irisch
    在 中回复了 队长别开枪 最后由 编辑
    #11

    @队长别开枪
    4(nodes) X 6(tasks/node) X 4(cpus/task(区域))=96cpus

    1 条回复 最后回复
  • W 离线
    W 离线
    wwzhao 超神
    在 中回复了 Irisch 最后由 编辑
    #12

    @Irisch 网格细化后采用多核求解和粗网格少核求解的时间单个时间步的求解时间可能差别不大,但细网格对应的时间步长需要减少,总共的迭代时间步数会增加

    I 1 条回复 最后回复
  • I 离线
    I 离线
    Irisch
    在 中回复了 wwzhao 最后由 编辑
    #13

    @wwzhao 恩恩是的,非常感谢!

    W 1 条回复 最后回复
  • W 离线
    W 离线
    wwzhao 超神
    在 中回复了 Irisch 最后由 编辑
    #14

    @Irisch 没明白task是什么,一般只有node或CPU core的概念。你用的这个HPC应该是一个node有24个CPU core,24万网格我估计顶多用两个CPU core就可以跑,再多的CPU core也提升不了多少求解速度。。。

    I 1 条回复 最后回复
  • I 离线
    I 离线
    Irisch
    在 中回复了 wwzhao 最后由 编辑
    #15

    @wwzhao
    task就是对应的一个分割的区域,就是总的task数目对应分割的数量24个,只不过你要给超算要告诉他你有几个task要做,这个是在超算上设置的。
    如果我把参差稍微放大到10的-4或者-3的量级,对结果会产生很大的影响么?

    1 条回复 最后回复
  • 队长别开枪队 离线
    队长别开枪队 离线
    队长别开枪 超神
    在 中回复了 Irisch 最后由 编辑
    #16

    @Irisch 建议做下网格尺寸无关性,一味的追求超精细网格是没有意义的,网格细化到一定程度后再细化可能对结果影响很小,但是会增加计算时间,一是会降低时间步长,二来也增加了代数求解器的迭代次数和时间。工程应用中的CFD需要平衡求解精度和计算所需时间,找到一个精度和计算时间都可以接受的网格尺寸。

    I 1 条回复 最后回复
  • I 离线
    I 离线
    Irisch
    在 中回复了 队长别开枪 最后由 编辑
    #17

    @队长别开枪 在 有关Openfoam在超算并行运算的问题 中说:

    网格尺寸无关性

    好的!非常感谢!

    1 条回复 最后回复
  • C 离线
    C 离线
    cccrrryyy 超神
    写于 最后由 编辑
    #18

    你运行完decomposePar后的显示是什么?手动分块容易造成有的核分了很多网格,有的分了很少,分的多的跑的很慢,所以其他核还是要等它算完了才能继续。我一般用scotch,不用输入任何参数,openfoam自动会把分区做成1、每个分区cell数目接近;2、分区之间的processor面尽量的小,从而减小数据传输的需求。

    batch系统调度感觉你需要再细看一下?node是结点数,你24个分块,如果比如超算上一个结点就有24个核(4个6核cpu),那你node数量只需要1吧?这个超算是什么样的,每个结点有几个cpu,每个cpu几核呀?

    I don't want to survive, I want to thrive.

    1 条回复 最后回复

  • 登录

  • 登录或注册以进行搜索。
  • 第一个帖子
    最后一个帖子
0
  • 最新
  • 版块
  • 东岳流体
  • 随机看[请狂点我]