Oracle® Solaris Studio 12.4:数值计算指南

退出打印视图

更新时间: 2015 年 1 月
 
 

5.2 代码生成选项

Oracle Solaris Studio 12.4 支持多种不同的 SPARC 和 x86 处理器芯片。其中每个处理器芯片都有一个 –xtarget= 命令行编译器选项。–-xtarget= 选项指定实现的指令集、实现该指令集的特定处理器芯片以及不同高速缓存的大小。–xtarget 对于以下内容起到宏的作用:

–xarch=architecture

编译器在优化代码时,使用 –xarch= 选项来确定在硬件中实现哪些指令,从而适合代码生成。

–xchip=chip

编译器在优化代码时,使用 –xchip= 选项来确定哪个特定芯片合适,从而确定如何调度指令。

–xcache=cache-size

编译器在优化代码时,使用 –xcache= 选项来确定如何阻止循环以尽可能减少内存流量。

通过针对特定目标进行优化,您可以获得最适合该目标的代码,不过,对于具有不同指令集和调度约束的不同目标,这可能会非常糟糕。当一个可执行文件需要在多个不同的目标系统上运行时,缺省的通用代码生成效果最佳,也可以使用选项 –xtarget=generic 显式选择。

一些 –xtarget= 名称的意义不太明显。要指定特定目标,您可以将 –native 选项用于 Oracle Solaris Studio 编译器,这将自动为编译的目标系统选择 –xtarget=。在 SPARC 系统上,fpversion 命令将显示类似的信息。有关更多信息,请参见Appendix B, SPARC 行为和实现