24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1386  |  回复: 5
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

souledge

专家顾问 (著名写手)

[求助] 使用PGI编译VASP中无法使用长数组

使用PGI最新的12.3 Workstation版(2周试用许可证),MPICH2(configure OpenMPI时出错失败~),编译了VASP 4.6.28。
把makefile.linux_pg_opt稍微修改一下,最关键的是修改处理器类型,去掉-i8,就可以成功编译VASP了,结果没有问题。
但是看到pgif90的帮助文件上有参数:
-Mlarge_arrays
  -Mnolarge_arrays (default) (linux86-64 only). Allow (don't allow) arrays larger than 2GB;
  -Mlarge_arrays is default with -mcmodel=medium.

想到使用ifort时,如果不使用-heap-arrays,就会在计算大体系时容易内存溢出然后停止计算,于是也就在PGI的编译上使用了-Mlarge_arrays,结果,计算哪怕是个非常简单的结构时,也会在reading WAVECAR后出现错误:
internal ERROR: SETYLM, insufficient INDMAX workspace
比较郁闷和搞笑的是,这个错误在VASP的官方论坛里看,是使用ifort编译的,并且解决方案恰恰就是添加-heap-arrays……
于是实在想不出解决方法来了,来看看大家有什么解决方案没……
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

思想重于技巧,内涵重于表象
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

thinkllh

铁杆木虫 (正式写手)

【答案】应助回帖


感谢参与,应助指数 +1
fzx2008: 金币+1, 谢谢回帖交流! 2012-04-03 23:31:59
如此,何不直接用ifort, 还 不 存在 2周 试用 的 问 题.
Thinkwiththeworld.
2楼2012-04-03 22:58:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 souledge 的主题更新
信息提示
请填处理意见