数组初始化运行时比较 ifort 与 gfortran

问题描述

我想使用此编译行与 CentOS Linux 7 上的 gfortran 10.1.0 和 ifort 19.1.3.304 比较 ifort 与 gfortran 的数组初始化运行时间:

--cleanenv

ifort array-initialize.f90 -O3 -init=arrays,zero,minus_huge,snan -g -o intel-array.out

array-initialize.f90:

gfortran array-initialize.f90 -O3 -finit-local-zero -finit-integer=-2147483647 -finit-real=snan -finit-logical=True -finit-derived -g -o gnu-array.out

此代码的运行时间:

gnu - 0.096 秒

英特尔 - 0.392 秒

当我删除初始化标志时:

gnu - 0.098 秒

英特尔 - 0.057 秒

当我用两个变量替换数组时:

gnu - 0.099 秒

英特尔 - 0.065 秒


这里发生了什么? gnu 不初始化它的数组吗?英特尔初始化数组是否非常慢?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)