计算化学公社

标题: vasp计算HSE报错。 [打印本页]

作者
Author:
didi_dudu    时间: 2016-9-22 08:09
标题: vasp计算HSE报错。
想计算下vasp的HSE,但是一直报错。
Fatal error in PMPI_Allgatherv: Invalid buffer pointer, error stack:
PMPI_Allgatherv(1124): MPI_Allgatherv(sbuf=0x97c0570, scount=648, MPI_DOUBLE_COMPLEX, rbuf=0x97c0570, rcounts=0x9085420, displs=0x9021060, MPI_DOUBLE_COMPLEX, comm=0xc4000003) failed
PMPI_Allgatherv(1072): Buffers must not be aliased

===================================================================================
=   BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES
=   PID 425 RUNNING AT mu01
=   EXIT CODE: 1
=   CLEANING UP REMAINING PROCESSES
=   YOU CAN IGNORE THE BELOW CLEANUP MESSAGES

========================================
目前报错是这个,看起来感觉像是mpi有问题,在网上查了一下说重新用intel11来编译可能可以解决这个问题,但是我试了一下,还是继续报这个错。我现在用的是mpich编译的vasp。还没试过openmpi编译能不能行~
求大神指导!


附上incar
system=test
ISTART=0
ICHARG=2
ENCUT=500
EDIFF=1E-6
IBRION=2
POTIM=0.1
NSW=100
EDIFFG=-1E-2
ISMEAR=0
SIGMA=0.10
PREC=medium
ISIF=3
NPAR=96
ISPIN=2
LORBIT=11
NELM=45
LHFCALC=.TRUE.
PRECFOCK=Fast
HFSCREEN=0.2
ALGO=All
TIME=0.4


作者
Author:
didi_dudu    时间: 2016-9-22 09:44
http://mailman.cse.ohio-state.ed ... ecember/005261.html
按照这个帖子,似乎是解决了。虽然并不懂这个修改的具体含义~~~
Fix the VASP code instead.
--- a/dfast.F
+++ b/dfast.F
@@ -325,7 +325,7 @@ MODULE dfast
           CALL GGEMM( TRANSA, TRANSB, N1,  PGEMM_HANDLE%NCOL(
PGEMM_HANDLE%COMM%
                B(1,1+PGEMM_HANDLE%OFFSET( PGEMM_HANDLE%COMM%NODE_ME)),
LDB, BETA

-         CALL MPI_allgatherv
(C(1,1+PGEMM_HANDLE%OFFSET(PGEMM_HANDLE%COMM%NODE_
+         CALL MPI_allgatherv (MPI_IN_PLACE, 0, MPI_DATATYPE_NULL, &
                C, PGEMM_HANDLE%NCTOT, PGEMM_HANDLE%OFFDATA, MPIDATA,
PGEMM_HANDL
        ELSE
           WRITE(*,*) 'internal error in PARALLEL_GGEMM: the second
matrix needs

作者
Author:
有点意思    时间: 2018-5-6 11:38
didi_dudu 发表于 2016-9-22 09:44
http://mailman.cse.ohio-state.ed ... ecember/005261.html
按照这个帖子,似乎是解决了。虽然并不懂这个 ...

楼主你好,请问这个代码怎么加进去啊
作者
Author:
didi_dudu    时间: 2018-5-14 16:15
本帖最后由 didi_dudu 于 2018-5-14 16:17 编辑
有点意思 发表于 2018-5-6 11:38
楼主你好,请问这个代码怎么加进去啊

直接去修改这个对应的文件,在里面加-         CALL MPI_allgatherv
(C(1,1+PGEMM_HANDLE%OFFSET(PGEMM_HANDLE%COMM%NODE_
+         CALL MPI_allgatherv (MPI_IN_PLACE, 0, MPI_DATATYPE_NULL, &
                C, PGEMM_HANDLE%NCTOT, PGEMM_HANDLE%OFFDATA, MPIDATA,
PGEMM_HANDL
没记错的话就是把上面那一段改成下面那一段。。~~~过了太久了有点没印象了






欢迎光临 计算化学公社 (http://ccc.keinsci.com/) Powered by Discuz! X3.3