当我使用 Intel Fortran 编译器和 Portlan Group 编译器编译相同的代码时,我得到了不同的结果。-fp-model precise
pgi Fortran 中与ifort
中最接近的标志是什么?
pgi 中是否有一组标志可以匹配-O2 -fp-model precise
ifort 标志的组合?
谢谢
问问题
1041 次
1 回答
3
使用不同编译器(甚至同一编译器的不同版本)编译的程序预计不会产生完全相同的结果。不同级别的优化(-On
标志)在编译器之间也不是等效的(除了-O0
根本不要求优化)。
我认为 PGI 中没有与 ifort's 等效的标志-fp-model precise
,但您可能需要查看 PGI Fortran 编译器手册中的目标特定标志,更具体地说,这些标志:
-K[no]ieee Use IEEE division, optionally enable traps
-Ktrap=align|denorm|divz|fp|inexact|inv|none|ovf|unf
Determine IEEE Trap conditions
-M[no]daz Treat denormalized numbers as zero
-M[no]flushz Set SSE to flush-to-zero mode
-M[no]fpapprox[=div|sqrt|rsqrt]
Perform certain fp operations using low-precision approximation
div Approximate floating point division
sqrt Approximate floating point square root
rsqrt Approximate floating point reciprocal square root
-Mfpapprox Approximate div,sqrt,rsqrt
-M[no]fpmisalign Allow use of vector arithmetic instructions for unaligned operands
-M[no]fprelaxed[=div|recip|sqrt|rsqrt|[no]order]
Perform certain fp operations using relaxed precision
div Perform divide with relaxed precision
recip Perform reciprocal with relaxed precision
sqrt Perform square root with relaxed precision
rsqrt Perform reciprocal square root with relaxed precision
[no]order Allow expression reordering, including factoring
-Mfprelaxed Choose which operations depending on target processor
程序的输出在不同编译器之间的某个不太重要的数字上有所不同是可以接受的。如果您的结果非常不同,则您的算法可能不是很健壮并且可能需要工作。
于 2013-02-22T21:39:00.967 回答