计算化学公社

 找回密码 Forget password
 注册 Register
Views: 13544|回复 Reply: 16
打印 Print 上一主题 Last thread 下一主题 Next thread

[Gaussian/gview] GAUSSIAN16 c01 PGI编译和INTEL编译对比(未完成)

[复制链接 Copy URL]

33

帖子

0

威望

124

eV
积分
157

Level 3 能力者

本帖最后由 xp47 于 2020-3-11 10:31 编辑

简单测试了Gaussian16 c01 不同编译器下的表现,因为在家资源有限暂时不能完善测试结果。注: 测试文件使用g16目录下的tests中随机挑选的结构(test0969)。
CPU  : 3900x
MB    : x570
MEM  : 64GB(16Gx4 3200MHz, E5 机型 2400MHz ECC,忘记了控制变量回头会上ECC内存给3900x的机器)
SSD   : 海康威视2000 pro 512G
OS    :Ubuntu Studio 18.4
FC/CC :intel 2020 (icc/使用-axCORE-AVX2)| PGI 19.10 (cc -- gcc 9.2 -march=znver2)

Functional : CAM-b3lyp
Basis set : aug-cc-pvtz [SCF Done -312.235327001 A.U.] (感觉应该没啥问题)
所有编译均未进行任何代码修改。(这里提醒大家得安装tcsh或者安装csh配置变量长度限制😂), 同时表中对比INTEL平台CPU为E5 2667 v4 (使用g16c自带的haswell方案编译).
CPU Compiler OSElapsed Time/sRatio
R9 3900x (nproc=8) PGI_19.10 Ubuntu Studio 18.41231.18
R9 3900x (nproc=8) INTEL2020 Ubuntu Studio 18.4104.21.0
E5 2667 v4 (nproc=8) INTEL2020 Centos 7.2192.41.84

正在尝试gfortran编译(很大可能上是要改代码)。目前本地没有E5的CPU故暂时不能排除系统导致的区别部分。但是考虑到3900x最近2900(美亚已经2K8了)就能入手(三个月亏了1K真的是)。
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
为了好玩贴一个这几天写的一句话结构优化提取的python代码(其实是两句):
  1. import os, glob
  2. [os.system("cat < {0}.xyz  {1} ".format(glob.glob("*.out_g*")[item].replace(".out_g","_"),geo.count(""))+geo+"EOF ") for item,geo in enumerate([cnt.split("1\1")[-1].split("\")[3].replace("","").replace(",","  ") for cnt in ["".join([line.strip() for line in raw.split("")]) for raw in [open(ifile,'r').read().strip() for ifile in glob.glob("*.out_g*")]]])]
复制代码
我...没注意,论坛代码贴上去会少掉一个反斜杠......
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
另外,zen2构架cpu和x570的主板运行ubuntu 18.04,内核不到5+,想要获取温度和电流功率等信息sensors可能就不太好用了。推荐遇到这种情况使用zenpower(自行去github搜索)系统监控使用s-tui获得温度频率功耗等数据:
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
1) gnu目前已经可以编译通过,在排除bug
2) oneMKL 正在下载中,实在是慢,下载后将加入测试对比

分享fortran代码分析工具(在找网盘上传了):

s-tui.png (57.46 KB, 下载次数 Times of downloads: 27)

s-tui.png

24

帖子

0

威望

149

eV
积分
173

Level 3 能力者

17#
发表于 Post on 2024-12-5 18:09:43 | 只看该作者 Only view this author
wayne 发表于 2020-4-24 15:42
**** 作者被禁止或删除 内容自动屏蔽 ****

我用pgi编译时也遇到了跟你一样的情况,请问你最后怎么解决的?

1

帖子

0

威望

9

eV
积分
10

Level 1 能力者

16#
发表于 Post on 2020-4-24 15:42:26 | 只看该作者 Only view this author
我們實驗室也有買C.01
caldft.f:(.text+0x5f): undefined reference to `opndbg_'
util.a(rddef.o): In function `rddef_':
rddef.f:(.text+0x194): undefined reference to `deflnm_'
util.a(starut.o): In function `starut_':
starut.f:(.text+0x3a6): undefined reference to `ckpthr_'
starut.f:(.text+0x466): undefined reference to `ldgarg_'
starut.f:(.text+0x46d): undefined reference to `execself_'
util.a(prismc.o): In function `prismc_':
prismc.f:(.text+0xc63): undefined reference to `opndbg_'
util.a(prmraf.o): In function `prmraf_.V':
prmraf.f:(.text+0xb1d): undefined reference to `opndbg_'
util.a(prmraf.o): In function `prmraf_.A':
prmraf.f:(.text+0x96fa): undefined reference to `opndbg_'
bsd/g16.make:397: recipe for target 'g16' failed
make: *** [g16] Error 1
if ( -e flc ) then
if ( ( -d local ) && ( ! ( -e gpu.flag ) ) ) then
rm -f gau-machine
make -f bsd/g16.make JUNK1=JUNK gau-machine
icc -w -vec-report6 -ftz -fma -g -axCORE-AVX2 -mssse3 -shared-intel -fp-speculation=off -fp-model=strict -mkl=parallel -opt-mem-layout-trans -Ibsd/include/intel64/ilp64   -o gau-machine bsd/machine.c
icc: remark #10397: optimization reports are generated in *.optrpt files in the output location
endif
rm: No match.
以上是錯誤內容,請問各位大神問題出在哪裡?
或是我要改用其他complier 編譯

80

帖子

2

威望

639

eV
积分
759

Level 4 (黑子)

15#
发表于 Post on 2020-3-22 14:44:33 | 只看该作者 Only view this author
monoyu 发表于 2020-3-22 11:35
请教一下:用ORCA跑100-150原子左右的结构优化及单点能计算,3900x和3950x哪个性价比更高一些呢?

http://bbs.keinsci.com/thread-16567-1-1.html
为什么你要在这帖子里问呢……

1245

帖子

1

威望

3860

eV
积分
5125

Level 6 (一方通行)

14#
发表于 Post on 2020-3-22 12:59:03 | 只看该作者 Only view this author
本帖最后由 biogon 于 2020-3-22 13:15 编辑

有源代码就是方便,没想到牙膏编译器编译出来的比PGI的还快
还可以拿编译好的来比较一下6254跑了下test0969 12c耗时116.6s

161

帖子

0

威望

1210

eV
积分
1371

Level 4 (黑子)

13#
发表于 Post on 2020-3-22 11:35:48 | 只看该作者 Only view this author
pika02 发表于 2020-3-8 17:36
我开12核模拟3900x,wsl下g16 a03 avx2跑一个优化花了20分32.8秒;16核花了19分44.6秒,这并行效率简直了 ...

请教一下:用ORCA跑100-150原子左右的结构优化及单点能计算,3900x和3950x哪个性价比更高一些呢?

33

帖子

0

威望

124

eV
积分
157

Level 3 能力者

12#
 楼主 Author| 发表于 Post on 2020-3-17 18:40:37 | 只看该作者 Only view this author
本帖最后由 xp47 于 2020-3-17 18:42 编辑
Mikasa 发表于 2020-3-17 18:06
求问如何用ifort编译

编译器2020/只需要修改blas部分就可以了(注意所使用链接库种类(.so还是.a))这里列举我的make文件内容:
编译命令对比添加:-mcmodel=medium   -auto -axCORE-AVX2 -shared-intel -static-libgcc
(其实可有可无但是为了保险起见)
我选择的是.a,也就是静态链接库(当然动态也同理):
修改BLAS为:${MKLROOT}/lib/intel64/libmkl_blas95_ilp64.a ${MKLROOT}/lib/intel64/libmkl_lapack95_ilp64.a ${MKLROOT}/lib/intel64/libmkl_scalapack_ilp64.a -Wl,--start-group ${MKLROOT}/lib/intel64/libmkl_cdft_core.a ${MKLROOT}/lib/intel64/libmkl_intel_ilp64.a ${MKLROOT}/lib/intel64/libmkl_intel_thread.a ${MKLROOT}/lib/intel64/libmkl_core.a  -Wl,--end-group -liomp5 -lpthread -lm -ldl

与此前版本不同的是,c01编译不需要修改源码两处EQ部分(之前需要修改)。 细节记不太起来了....让我整理下,不过以上两点改完了,特别是第二点,就大体上能编译通过了。使用-axCORE主要是为了给AMDcpu提速,但是编译过程可能需要大概十分钟,而用-xCORE则可能只需要七八分钟。====================================================================================================
我在想有可能....pgi编译用的是它自带的blas.a文件&#128514; 我回头试试用pgi编译的blas相关库和openblas

评分 Rate

参与人数
Participants 1
eV +5 收起 理由
Reason
Mikasa + 5 感谢!

查看全部评分 View all ratings

221

帖子

0

威望

6214

eV
积分
6435

Level 6 (一方通行)

跳跳猪

11#
发表于 Post on 2020-3-17 18:06:48 | 只看该作者 Only view this author
求问如何用ifort编译
流年似水,浮生如梦。

80

帖子

2

威望

639

eV
积分
759

Level 4 (黑子)

10#
发表于 Post on 2020-3-8 17:36:48 | 只看该作者 Only view this author
xp47 发表于 2020-3-7 16:46
美亚大降价!!!已经2K8

我开12核模拟3900x,wsl下g16 a03 avx2跑一个优化花了20分32.8秒;16核花了19分44.6秒,这并行效率简直了
结论:3900x跑高斯性价比巨高

33

帖子

0

威望

124

eV
积分
157

Level 3 能力者

9#
 楼主 Author| 发表于 Post on 2020-3-7 16:46:58 | 只看该作者 Only view this author
pika02 发表于 2020-2-26 20:46
3900x只要2900了?
核心数有3950x的3/4,价格只有一半,这性价比太香了
遇上并行效率不高的软件,3900x甚 ...

美亚大降价!!!已经2K8

161

帖子

0

威望

628

eV
积分
789

Level 4 (黑子)

蓝卫兵

8#
发表于 Post on 2020-2-27 22:59:54 | 只看该作者 Only view this author
xp47 发表于 2020-2-26 20:13
都是因为想偷个懒写成了一行便于携带&#128514;

纹手臂上。。。确实便于携带
B样条插值
个人专栏https://zhuanlan.zhihu.com/p/21936803

33

帖子

0

威望

124

eV
积分
157

Level 3 能力者

7#
 楼主 Author| 发表于 Post on 2020-2-26 21:44:49 | 只看该作者 Only view this author
pika02 发表于 2020-2-26 20:46
3900x只要2900了?
核心数有3950x的3/4,价格只有一半,这性价比太香了
遇上并行效率不高的软件,3900x甚 ...

前两天秋名山开了3199之后另外一个群开车2900,现在就是后悔。(反倒3600涨了些)
对的 还希望rocm推广出来代替cuda

33

帖子

0

威望

124

eV
积分
157

Level 3 能力者

6#
 楼主 Author| 发表于 Post on 2020-2-26 21:42:41 | 只看该作者 Only view this author
冰释之川 发表于 2020-2-26 20:29
看到EOF 我还以为是用大蟒皮  套一个shell核

&#128514; 我也想用awk一句话结果最后放弃了 python方便些 其实也可以用print >> 考虑到有时候哦python2有时候python3 就得换成 print file=xxx 懒得改决定用了system

80

帖子

2

威望

639

eV
积分
759

Level 4 (黑子)

5#
发表于 Post on 2020-2-26 20:46:36 | 只看该作者 Only view this author
3900x只要2900了?
核心数有3950x的3/4,价格只有一半,这性价比太香了
遇上并行效率不高的软件,3900x甚至等于八九成的3950x

1102

帖子

18

威望

6703

eV
积分
8165

Level 6 (一方通行)

計算化学の社畜

4#
发表于 Post on 2020-2-26 20:29:34 | 只看该作者 Only view this author
看到EOF 我还以为是用大蟒皮  套一个shell核
Stand on the shoulders of giants

本版积分规则 Credits rule

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2026-2-21 03:45 , Processed in 0.210442 second(s), 31 queries , Gzip On.

快速回复 返回顶部 返回列表 Return to list