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
3 帖子 2 发布者 3.2k 浏览
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • 莫 离线
    莫 离线
    莫晓柒
    写于 最后由 编辑
    #1

    同样一个算例,我在自己的电脑上运行时没有问题,当我加密网格以后(同时减少时间步长以满足CFL条件)把它挂到集群上去并行计算以后就出现了如下错误。
    OpenFOAM版本是5.0,用的求解器是rhoPImpleDyMFoam,用32个核求解。有人知道是什么原因吗?

    [17] #0  Foam::error::printStack(Foam::Ostream&)--------------------------------------------------------------------------
    An MPI process has executed an operation involving a call to the
    "fork()" system call to create a child process.  Open MPI is currently
    operating in a condition that could result in memory corruption or
    other system errors; your MPI job may hang, crash, or produce silent
    data corruption.  The use of fork() (or system() or other calls that
    create child processes) is strongly discouraged.  
    
    The process that invoked fork was:
    
      Local host:          c37 (PID 390101)
      MPI_COMM_WORLD rank: 17
    
    If you are *absolutely sure* that your application will successfully
    and correctly survive a call to fork(), you may disable this warning
    by setting the mpi_warn_on_fork MCA parameter to 0.
    --------------------------------------------------------------------------
     at ??:?
    [17] #1  Foam::sigFpe::sigHandler(int) at ??:?
    [17] #2  ? in "/usr/lib64/libc.so.6"
    [17] #3  Foam::divide(Foam::Field<double>&, Foam::UList<double> const&, Foam::UList<double> const&) at ??:?
    [17] #4  Foam::tmp<Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> > Foam::operator/<Foam::fvPatchField, Foam::volMesh>(Foam::tmp<Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> > const&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&) at ??:?
    [17] #5  Foam::CompressibleTurbulenceModel<Foam::fluidThermo>::nu() const at ??:?
    [17] #6  Foam::RASModel<Foam::EddyDiffusivity<Foam::ThermalDiffusivity<Foam::CompressibleTurbulenceModel<Foam::fluidThermo> > > >::nuEff() const at ??:?
    [17] #7  Foam::linearViscousStress<Foam::RASModel<Foam::EddyDiffusivity<Foam::ThermalDiffusivity<Foam::CompressibleTurbulenceModel<Foam::fluidThermo> > > > >::divDevRhoReff(Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh>&) const at ??:?
    [17] #8  ? at ??:?
    [17] #9  __libc_start_main in "/usr/lib64/libc.so.6"
    [17] #10  ? at ??:?
    [c37:390101] *** Process received signal ***
    [c37:390101] Signal: Floating point exception (8)
    [c37:390101] Signal code:  (-6)
    [c37:390101] Failing at address: 0x3f90005f3d5
    [c37:390101] [ 0] /usr/lib64/libc.so.6(+0x35670)[0x7f73dcd2f670]
    [c37:390101] [ 1] /usr/lib64/libc.so.6(gsignal+0x37)[0x7f73dcd2f5f7]
    [c37:390101] [ 2] /usr/lib64/libc.so.6(+0x35670)[0x7f73dcd2f670]
    [c37:390101] [ 3] /home/wangb/OpenFOAM/OpenFOAM-5.0/platforms/linux64GccDPInt32Opt/lib/libOpenFOAM.so(_ZN4Foam6divideERNS_5FieldIdEERKNS_5UListIdEES6_+0x78)[0x7f73de103d48]
    [c37:390101] [ 4] /home/wangb/OpenFOAM/OpenFOAM-5.0/platforms/linux64GccDPInt32Opt/lib/libturbulenceModels.so(_ZN4FoamdvINS_12fvPatchFieldENS_7volMeshEEENS_3tmpINS_14GeometricFieldIdT_T0_EEEERKS8_RKS7_+0x1cf)[0x7f73e249deef]
    [c37:390101] [ 5] /home/wangb/OpenFOAM/OpenFOAM-5.0/platforms/linux64GccDPInt32Opt/lib/libcompressibleTurbulenceModels.so(_ZNK4Foam27CompressibleTurbulenceModelINS_11fluidThermoEE2nuEv+0x36)[0x7f73e20c7fa6]
    [c37:390101] [ 6] /home/wangb/OpenFOAM/OpenFOAM-5.0/platforms/linux64GccDPInt32Opt/lib/libcompressibleTurbulenceModels.so(_ZNK4Foam8RASModelINS_15EddyDiffusivityINS_18ThermalDiffusivityINS_27CompressibleTurbulenceModelINS_11fluidThermoEEEEEEEE5nuEffEv+0x53)[0x7f73e20ce303]
    [c37:390101] [ 7] /home/wangb/OpenFOAM/OpenFOAM-5.0/platforms/linux64GccDPInt32Opt/lib/libcompressibleTurbulenceModels.so(_ZNK4Foam19linearViscousStressINS_8RASModelINS_15EddyDiffusivityINS_18ThermalDiffusivityINS_27CompressibleTurbulenceModelINS_11fluidThermoEEEEEEEEEE13divDevRhoReffERNS_14GeometricFieldINS_6VectorIdEENS_12fvPatchFieldENS_7volMeshEEE+0x37)[0x7f73e20fd4c7]
    [c37:390101] [ 8] rhoPimpleDyMFoam[0x4265a6]
    [c37:390101] [ 9] /usr/lib64/libc.so.6(__libc_start_main+0xf5)[0x7f73dcd1bb15]
    [c37:390101] [10] rhoPimpleDyMFoam[0x42a315]
    [c37:390101] *** End of error message ***
    --------------------------------------------------------------------------
    mpirun noticed that process rank 17 with PID 390101 on node c37 exited on signal 8 (Floating point exception).
    
    
    1 条回复 最后回复
  • 李东岳李 在线
    李东岳李 在线
    李东岳 管理员
    写于 最后由 编辑
    #2

    计算发散了。。。。再减少时间步长试试

    http://dyfluid.com/index.html
    需要帮助debug算例的看这个 https://cfd-china.com/topic/8018

    1 条回复 最后回复
  • 莫 离线
    莫 离线
    莫晓柒
    写于 最后由 编辑
    #3

    李老师,我用的是可变时间步长,保证CFL数小于1,所以应该不是时间步长的问题,我注意到计算是计算到某一步之后rhoEqn的最小值突然变成0了,这可能是什么原因呢?

    rhoEqn max/min : 1.62584 0
    
    
    1 条回复 最后回复

  • 登录

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