计算化学公社

标题: 请教WSL运行G16报错 Error: segmentation violation 该如何解决? [打印本页]

作者
Author:
kimariyb    时间: 2023-5-19 13:56
标题: 请教WSL运行G16报错 Error: segmentation violation 该如何解决?
本帖最后由 kimariyb 于 2023-5-19 14:01 编辑

各位老师好:


学生在Windows10 21H2下使用WSL Debian安装Gaussian 16 A03 AVX2,安装步骤和正常Linux系统下安装一致(Sob老师的这篇博文:http://sobereva.com/439),调用命令 g16 <1.gjf | tee 1.out(1.gjf 是一个很简单的丙烷opt freq的输入文件)


  1. # opt freq b3lyp/6-31g*

  2. this is 1.gjf file

  3. 0 1
  4. C                 -3.12103037   -0.61562740    0.14689347
  5. H                 -2.76437594   -1.62443741    0.14689347
  6. H                 -2.76435753   -0.11122921   -0.72675803
  7. H                 -4.19103037   -0.61561422    0.14689347
  8. C                 -2.60768815    0.11032887    1.40429844
  9. H                 -2.96432697    1.11914439    1.40428889
  10. H                 -2.96437665   -0.39405860    2.27794974
  11. C                 -1.06768815    0.11028556    1.40431200
  12. H                 -0.71099992    0.61467089    0.53065936
  13. H                 -0.71101531    0.61468572    2.27796237
  14. H                 -0.71104967   -0.89853008    1.40432371


复制代码

运行之后马上就报错,以下是报错的内容:

  1. Entering Gaussian System, Link 0=g16
  2. Initial command:
  3. /home/kimariyb//g16/l1.exe "/home/kimariyb/g16/scratch/Gau-172.inp" -scrdir="/home/kimariyb/g16/scratch/"
  4. Error: segmentation violation
  5. Error converting string "                 9.5" to an integer.
  6. Input conversion error in IntKMC.
  7. Error termination via Lnk1e at Fri May 19 12:52:42 2023.
  8. rax 0000000000000000, rbx 0000000001f9ef40, rcx 00007f48c152d040
  9. rdx 0000000000000000, rsp 00007ffff3477698, rbp 00007ffff34776f0
  10. rsi 000000000000000b, rdi 00000000000000af, r8  0000000000000000
  11. r9  0000000000000000, r10 00007f48c152d040, r11 00007f48c152d040
  12. r12 00007ffff3479760, r13 0000000000000012, r14 0000000001fa0010
  13. r15 0000000008000000
  14. /lib/x86_64-linux-gnu/libpthread.so.0(+0x13140) [0x7f48c1501140]
  15. /lib/x86_64-linux-gnu/libc.so.6(kill+0x7) [0x7f48c11f9087]
  16. /home/kimariyb//g16/l1.exe() [0x4f4ea9]
  17. /home/kimariyb//g16/l1.exe() [0x50e790]
  18. /home/kimariyb//g16/l1.exe() [0x5087bf]
  19. /home/kimariyb//g16/l1.exe() [0x50cc80]
  20. /home/kimariyb//g16/l1.exe() [0x50ca45]
  21. /home/kimariyb//g16/l1.exe() [0x512128]
  22. /home/kimariyb//g16/l1.exe() [0x46ddd7]
  23. /home/kimariyb//g16/l1.exe() [0x44fe05]
  24. /home/kimariyb//g16/l1.exe() [0x44fd37]
  25. /home/kimariyb//g16/l1.exe() [0x44fc84]
  26. /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xea) [0x7f48c11e3d0a]
  27. /home/kimariyb//g16/l1.exe() [0x44fb79]
  28. Aborted (core dumped)
复制代码

在安装g16之前,我还在WSL Debian里安装了ORCA以及ORCA需要的OpenMPI,均能正常编译和运行。同样是上面丙烷的例子,使用Multiwfn将1.gjf输出成1.inp毫无问题,并且可以使用ORCA正常执行并生成1.out文件(这个1.out文件是运行orca后输出的out文件),out文件结尾是 ****ORCA TERMINATED NORMALLY****,大概率是正常结束的意思吧(本人上个月才接触量化,还没有学习ORCA,只是实验性的调用一下命令,命令为 orca 1.inp > 1.out)

在g16报错之后也参考过其他帖子(http://bbs.keinsci.com/thread-18306-1-1.html),但是还是报错。在公社里没有找到合适的解决办法,因此发帖求助一下各位老师。下面我能提供的一些信息:

1. 机子是笔记本电脑,Win10 x64,内存16GB,CPU为i5-8300H 8核

2. WSL为WSL1,Debian为Debian 11

3. 在没装ORCA和Gaussian之前,我将WSL Debian子系统打包,转移到了E盘(和C盘是同一块固态),转移到E盘后才装的ORCA和g16

4. 也使用了Win下的g16 win64版,可以正常执行1.gjf文件

5. 运行的文件全都在WSL Debian下执行,不涉及Win下的其他文件,g16目录下的文件都是750的权限,ORCA目录下的文件都是777的权限。




作者
Author:
kimariyb    时间: 2023-5-19 15:25
各位老师好,目前问题已经解决了。我在发完贴后,尝试性的在WSL下又装了Gaussian 16 C01 AVX,同样调用 g16 <1.gjf |tee 1.out,终于可以正常运行。具体原因暂不清楚,本机的CPU可以使用AVX2指令集,并且我本机还有一个Fedora Linux系统可以正常使用Gaussian 16 A03 AVX2。或许是WSL下的Debian对AVX2指令集没安装或者是不完善(小白的猜想)。




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