| 查看: 5616 | 回复: 6 | ||
[求助]
lammps运行一定步数后停止(感觉是MPI的问题) Signal: Segmentation fault 已有2人参与
|
|
lammps安装好之后试着跑过例子,并行串行都没问题。 现在实际开始跑体系了,用reaxff,遇到的问题就是 比如设置并行跑一定步数,中间会报错停止: out文件里面的错: ---------------- Step 5020000 ----- CPU = 1251.1345 (sec) ---------------- TotEng = -380902.9196 KinEng = 13016.8627 Temp = 992.7001 PotEng = -393919.7822 E_bond = 0.0000 E_angle = 0.0000 E_dihed = 0.0000 E_impro = 0.0000 E_vdwl = -388558.1753 E_coul = -5361.6069 E_long = 0.0000 Press = 627.1629 -------------------------------------------------------------------------- mpirun noticed that process rank 30 with PID 81743 on node node04 exited on signal 11 (Segmentation fault). 然后另一个文件里写的是: [node04:81743] *** Process received signal *** [node04:81743] Signal: Segmentation fault (11) [node04:81743] Signal code: Address not mapped (1) [node04:81743] Failing at address: 0x166f458b8 [node04:81743] [ 0] /lib64/libpthread.so.0[0x39bf00f710] [node04:81743] [ 1] /home/lmp/lammps-17Nov16/src/lmp_mpi[0xd54c63] [node04:81743] [ 2] /home/lmp/lammps-17Nov16/src/lmp_mpi[0xc351ac] [node04:81743] [ 3] /home/lmp/lammps-17Nov16/src/lmp_mpi[0xdd5c57] [node04:81743] [ 4] /home/lmp/lammps-17Nov16/src/lmp_mpi[0xd88643] [node04:81743] [ 5] /home/lmp/lammps-17Nov16/src/lmp_mpi[0x894269] [node04:81743] [ 6] /home/lmp/lammps-17Nov16/src/lmp_mpi[0x88de1d] [node04:81743] [ 7] /home/lmp/lammps-17Nov16/src/lmp_mpi[0x889b5b] [node04:81743] [ 8] /home/lmp/lammps-17Nov16/src/lmp_mpi[0x8a9384] [node04:81743] [ 9] /lib64/libc.so.6(__libc_start_main+0xfd)[0x39bec1ed5d] [node04:81743] [10] /home/lmp/lammps-17Nov16/src/lmp_mpi[0x40ad59] [node04:81743] *** End of error message *** 这个问题困扰已久,也搜过资料,有的说法是结构不好之类的。但是我试过同样的输入文件,在我们这里设置np=1的时候跑就可以跑完,也在别的地方跑完了。(一般设置np=40,然后就会报错),所以怀疑是MPI的问题。 在lammps user里面看到有人回复说这不是lammps的错,是cluster的问题,不过我们的机子上跑其他软件并行没问题,gromacs,高斯都可以。 目前还在in文件的pair_style reax/c lmp_control 加了 safezone 1.6 mincap 100 (手册说可以防止Segmentation fault,但续跑之后中间又停了) 当时编译时修改的部分: # mpi = MPI with its default compiler SHELL = /bin/sh # --------------------------------------------------------------------- # compiler/linker settings # specify flags and libraries needed for your compiler CC = mpicxx CCFLAGS = -g -O3 -restrict SHFLAGS = -fPIC DEPFLAGS = -M LINK = mpicxx LINKFLAGS = -g -O LIB = SIZE = size ARCHIVE = ar ARFLAGS = -rc SHLIBFLAGS = -shared LMP_INC = -DLAMMPS_GZIP -DLAMMPS_MEMALIGN=64 # MPI library # see discussion in Section 2.2 (step 5) of manual # MPI wrapper compiler/linker can provide this info # can point to dummy MPI library in src/STUBS as in Makefile.serial # use -D MPICH and OMPI settings in INC to avoid C++ lib conflicts # INC = path for mpi.h, MPI compiler settings # PATH = path for MPI library # LIB = name of MPI library MPI_INC = -DMPICH_SKIP_MPICXX -DOMPI_SKIP_MPICXX=1 -I/opt/openmpi/include MPI_PATH = -L/opt/openmpi/lib MPI_LIB = -Ipthread -Impi # FFT library # see discussion in Section 2.2 (step 6) of manual # can be left blank to use provided KISS FFT library # INC = -DFFT setting, e.g. -DFFT_FFTW, FFT compiler settings # PATH = path for FFT library # LIB = name of FFT library FFT_INC = -DFFT_FFTW -I/home/lmp/fftw2/include FFT_PATH = -L/home/lmp/fftw2/lib FFT_LIB = /home/lmp/fftw2/lib/libfftw.a 不知道是哪里有问题吗?或者有谁经历过这个问题吗,如果能给我一些指导的话感激不尽~ |
» 猜你喜欢
反铁磁体中的磁性切换:两种不同的机制已成功可视化
已经有0人回复
求标准粉末衍射卡号 ICDD 01-076-1802
已经有0人回复
物理学I论文润色/翻译怎么收费?
已经有50人回复
新西兰Robinson研究所招收全奖PhD
已经有0人回复
石墨烯转移--二氧化硅衬底石墨烯
已经有0人回复
笼目材料中量子自旋液体基态的证据
已经有0人回复
数学教学论硕士可以读数学物理博士吗?
已经有0人回复
德国亥姆霍兹Hereon中心汉堡分部招镁合金腐蚀裂变SCC课题方向2026公派博士生
已经有4人回复
澳门大学 应用物理及材料工程研究院 潘晖教授课题组诚招博士后
已经有11人回复
lijf517
木虫 (小有名气)
- 应助: 39 (小学生)
- 金币: 3391.9
- 红花: 14
- 帖子: 293
- 在线: 390.9小时
- 虫号: 2249203
- 注册: 2013-01-18
- 性别: GG
- 专业: 力学
|
应该不是MPI本身的问题。可能是你结构的问题。举个极端点的例子。比如你的体系一共只有20个原子,你却分配了40个cpu。那么肯定有一部分进程上是没有原子的,这是程序可能就会出错。也可能初始时各个cpu都有原子,但计算过程结构扭曲太厉害,原子都挤到一起去了,造成某些个CPU负责的区域变成空的了,没有原子了,计算也可能会出错。而串行过程是不会存在类似的问题的 发自小木虫Android客户端 |
2楼2017-06-26 16:43:40
3楼2017-06-26 17:43:28
4楼2017-06-26 21:19:03
5楼2017-06-26 23:05:24
6楼2017-10-19 16:21:06
7楼2019-03-14 16:13:20












回复此楼