针对浮点性能的编译

您可以改变默认的浮点选项以提高浮点密集型程序的性能。

其中的一些选项可能会影响浮点标准的一致性。 选定这些选项可能会改变计算的结果,但在很多情况下都是增加结果的准确性。

建议

请遵循下列准则:

  • 对于 POWER ® 系列POWER2 平台上的单精度程序,您可以使用以下浮点选项来提高性能,同时保持准确性:
    -qfloat=fltint:rsqrt:hssngl

    如果单精度程序不是内存密集型(例如不能存取比可用的高速缓存空间大的数据),可以达到更好的性能、更高的精度,只要作如下设定:

    -qfloat=fltint:rsqrt -qautodbl=dblpad4

    对不包含单精度变量的程序,只要设定:-qfloat=rsqrt:fltint。 注意 -O3 不包含 -qstrict 自动设定 -qfloat=rsqrt:fltint

  • 单精度程序一般比双精度程序效率高,因此将缺省的 REAL 值设为 REAL(8) 会降低程序性能。 设定 -qfloat 子选项: