计算化学公社
标题:
求助:CP2K内存如何控制
[打印本页]
作者Author:
ZHANGZY
时间:
2021-7-25 23:36
标题:
求助:CP2K内存如何控制
本帖最后由 ZHANGZY 于 2021-7-26 16:00 编辑
运行CP2K(预编译ssmp版本)时,出错,说是内存不够,错误提示如下:
Operating system error: Cannot allocate memory
Allocation would exceed memory limit。
Error termination.
CASTEP程序可以选择在“memory”模式下运行,以避免内存不够的情况。不知道CP2K有没有这种输入方法,控制运行所需的内存。
求助各位大神,附件是我的输入文件,多谢!!!
作者Author:
sobereva
时间:
2021-7-26 00:39
应当交代当前机子里有多少空余内存,具体什么CP2K版本
这段没必要写
&HF
&MEMORY
! In MB per MPI rank.. use as much as need to get in-core operation
MAX_MEMORY 8000
EPS_STORAGE_SCALING 0.1
&END
&END HF
作者Author:
ZHANGZY
时间:
2021-7-26 06:25
本帖最后由 ZHANGZY 于 2021-7-26 16:01 编辑
多谢大神!
计算机比较老,cpu i5四核,16g 内存。CP2K是cp2k-8.2-Linux-x86_64.ssmp,也试过cp2k-7.1-Linux-x86_64.ssmp,都是“无法分配内存”
主要是想先在小台式计算机上试试,如果没问题,再提交小型工作站计算。
多谢大神
作者Author:
sobereva
时间:
2021-7-27 00:22
去了&HF那段再试。纯泛函结合小基组在当前机子跑这样大小的体系不至于算不了。还应说明OMP_NUM_THERADS当前是多大,ulimit -a显示什么
作者Author:
ZHANGZY
时间:
2021-7-27 11:50
谢谢大神。我在.bashrc 中设置export OMP_NUM_THREADS=2
ulimit -a显示什么?
zzy@zzy:~$ ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 63439
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 63439
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
去了&HF那段再试,出错信息如下,输入输出见附件
zzy@zzy:~/chemsoft/cp2k/scratch/13$ mpirun -n 4 /home/zzy/chemsoft/cp2k/cp2k-8.2-Linux-x86_64.ssmp -o montmori-2.out montmori-2.inp
Operating system error: Operating system error: Cannot allocate memory
Allocation would exceed memory limit
Error termination. Backtrace:
Cannot allocate memory
Allocation would exceed memory limit
Error termination. Backtrace:
Could not print backtrace: mmap: Cannot allocate memory
Program received signal SIGSEGV: Segmentation fault - invalid memory reference.
Backtrace for this error:
Could not print backtrace: mmap: Cannot allocate memory
Program received signal SIGSEGV: Segmentation fault - invalid memory reference.
Backtrace for this error:
Could not print backtrace: mmap, errno: 12
#0 0x376c8a0
#1 0x376bf7f
#2 0x387286f
#3 0x37ef124
#4 0x37ef64d
#5 0x37eb6b4
#6 0x37eb9db
#7 0x37e864e
#8 0x37e8761
#9 0x37ce225
#10 0x3862878
#11 0x37ce298
#12 0x376c876
#13 0x376ca43
#14 0x376cc1c
#15 0x1a2b209
#16 0x1a76c0b
#17 0x7f9648
#18 0x8ac155
#19 0x6c3af9
#20 0xc9b1eb
#21 0xd7ee37
#22 0xd8228d
#23 0xbabd66
#24 0x53dc94
#25 0x4d8fd7
#26 0x4b516b
#27 0x43aa92
#28 0x43dbc7
#29 0x43928f
#30 0x4066cc
#31 0x3873f03
#32 0x3874180
#33 0x437645
#0 0x387286f in ???
#1 0x37ef124 in free_abbrevs
作者Author:
ZHANGZY
时间:
2021-7-28 11:09
CP2K太难了!好不容易盼来multiwfn会 写输入文件了。结果才252个原子,就算不动了了,内存不够,伤心。可为什么castep能算动?虽然慢点。
作者Author:
sobereva
时间:
2021-8-12 05:18
远程说不清楚。尝试用popt版吧
欢迎光临 计算化学公社 (http://bbs.keinsci.com/)
Powered by Discuz! X3.3