计算化学公社

标题: mopac怎么回事 [打印本页]

作者
Author:
xyz    时间: 2015-2-11 09:47
标题: mopac怎么回事
openmp并行32核比gaussian差的不是一点半点。优化320个原子的体系,高斯哗哗的走,15分钟就搞定了。MOPAC2012开了BFGS,5、6分钟刷一个cycle,整了几个小时还没完。而且MOPAC并行调用负载均衡做的超烂,时而占有率能到3200%,时而就99%,平均估计也就用了4、5个核左右。当时不知道看了网上哪个帖子说MOPAC并行PM6比高斯好,浪费了三天,幸好做了测试。

作者
Author:
sobereva    时间: 2015-2-11 10:21
你在MOPAC里没有用对方法。要么用EF,要么用LBFGS,对于你这样大小的体系不到10秒钟就能走一步。不要用BFGS,否则极慢。

高斯的半经验不支持并行。
MOPAC的半经验的效率绝对高于高斯,特别是对于大体系,速度甚至快几个数量级。虽说MOPAC的并行效率不怎么样,但这不是问题。
作者
Author:
xyz    时间: 2015-2-11 11:51
试了LBFGS,比BFGS更慢,15分钟了没出一个CYCLE,大概是体系相关。。。

高斯的问题,l301,l302,l401,l502都是并行的,全程保持2400%~3200%的cpu利用率, 除非高斯虚报使用率,否则并行是肯定的。
作者
Author:
xyz    时间: 2015-2-11 11:54
试了09C01-smp和09D01版本,都是并行的
作者
Author:
sobereva    时间: 2015-2-11 12:10
把你的MOPAC输入文件发上来我看看
作者
Author:
xyz    时间: 2015-2-11 12:17
谢谢帮忙检查!
作者
Author:
sobereva    时间: 2015-2-11 12:25
建议你对比一下G09串行和并行半经验计算的wall clock时间,会发现并行不并行没多大区别,16核就比串行快不到一半,虽然看似并行计算的时候CPU占满了。
作者
Author:
sobereva    时间: 2015-2-11 13:00
加上PL关键词就可以看到每一步迭代的过程,1秒钟好几步,比起Gaussian几秒钟一步快一个数量级。
但是你的体系太复杂了,一堆I、Cl、Pb堆在一起,导致MOPAC一直SCF迭代没有收敛,所以你看到优化过程奇慢。Gaussian收敛控制得比较好,最终收敛了,但即使如此我这里对初始结构做SCF也用了高达96步。

对于“正常”的体系,比如算个10个碱基对儿的DNA,MOPAC转眼就能优化完,完全不是高斯能企及的。

对于当前体系,建议适当地调调结构,修改、简化一下,反复尝试几遍,估计MOPAC就能收敛了。比如说,先把所有I去掉,如果优化收敛了,然后步步为营再把I加进去。
作者
Author:
xyz    时间: 2015-2-11 13:07
非常感谢,我先把一些局部结构弄好再往上一个个扔。
作者
Author:
北纬18°    时间: 2015-2-11 18:18
你用的关键词:PM7 LFGS CYCLES=2000
http://openmopac.net/manual/allkeys.html 没用找到关键词 LFGS.
作者
Author:
xyz    时间: 2015-2-12 12:21
上来update一下,对于难收敛的烂体系,一定要开EF,一上来就开shift=10和pulay (真不行再加camp, 参见http://openmopac.net/manual/SCF_convergence.html). 第一轮熬过去,后面就是康庄大道。感谢sobereva的PL关键字提示.




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