|
★ 小木虫(金币+0.5):给个红包,谢谢回帖交流
版主,我有个疑问阿,如下,版主能给点建议吗?谢谢。。或者可以共享下版主的编译经验吗?
我的计算环境如下:
我有两个Nodes,是HP的BL460c G7,配置是
Intel X5670 24G内存,两块20G的网卡。
我安装的系统的Debian-Lenny, 64bits
编译器是Intel的icc,ifort和MKL(version-11), 以及MPICH2。我已经
安装好VASP,才用Bewulf结构,但是计算中出现了问题:
1.如果我只在一个node上做计算(只启动一个node),采用mpirun,可以全速计算,MPI不会出现问题:
2.但是假如我同事启动两个,node0和node1(也就是两个node有数据交流时,不管用的核多少),我使用mpirun时,当POSCAR
或者说计算的super cell超过一定值时,就会报如下的错:
###################################################
Fatal error in MPI_Waitall: Other MPI error, error stack:
MPI_Waitall(261)..................: MPI_Waitall(count=46, req_array=0x7fffeeca46a0, status_array=0x7fffeeca4760) failed
MPIDI_CH3I_Progress(150)..........:
MPID_nem_mpich2_blocking_recv(948):
MPID_nem_tcp_connpoll(1709).......: Communication error
rank 23 in job 1 node0_55860 caused collective abort of all ranks
exit status of rank 23: killed by signal 9
###################################################举个例子,VASP的例子,关于水的优化:
O atom in a box
1.0 ! universal scaling parameters
8.0 0.0 0.0 ! lattice vector a(1)
0.0 8.0 0.0 ! lattice vector a(2)
0.0 0.0 8.0 ! lattice vector a(3)
1 ! number of atoms
cart ! positions in cartesian coordinates
0 0 0
当 “1.0 ! universal scaling parameters”,时,同时在两个nodes上计算(也就是两个node有数据交流时)会出错的,但是在一个node上不会。
但是当把“1.0 ! universal scaling parameters”中的“1”修改成0.5时,就不会。
我也测试过不管怎么样,当supercell超过4,就会出错。 |
|