fpversion [ -foption ]
fpversion は、システム CPU と利用可能なすべての浮動小数点ハードウェアに関する情報を標準出力に出力します。fpversion は、SPARC プラットフォームでのみ使用できます。
引数なしで起動すると、「CPU のタイプとクロックレートの近似値」、「FPU のタイプ」、「見かけのマスク番号とクロックレートの近似値」、「最高のパフォーマンスが得られる、SPARC ABI 準拠の浮動小数点コード生成オプション」のうちのいくつかの項目が表示されます。表示される情報の種類は、システムと利用可能な浮動小数点ハードウェアによって異なります。クロックレートは、ループ内で命令を実行して getrusage(2) で計時することで求められるため、少し変化することがあります。
その特定のシステムでもっとも高速な SPARC ABI 準拠の浮動小数点コード生成オプションを出力します。これは、プログラムをコンパイルするシェルスクリプトやメイクファイルで使用するように意図されていますが、その出力の先頭に -" が含まれないことに注意してください。
demo% fpversion A SPARC-based CPU is available. Kernel says CPU's clock rate is 1062.0 MHz. Kernel says main memory's clock rate is 177.0 MHz. Sun-4 floating-point controller version 0 found. An UltraSPARC chip is available. Use "-xtarget=ultra3i -xcache=64/32/4:1024/64/4" code-generation option. Hostid = 0x83270XXX. demo% fpversion -foption xtarget=ultra3i -xcache=64/32/4:1024/64/4
コンパイラのコマンド行で fpversion を次のように使用します。
cc -`fpversion -foption` any.c
これは次に相当します。
cc -xtarget=ultra2i -xcache=16/32/1:2048/64/1 any.c
UltraSPARC プラットフォームでは、もっとも高速な SPARC ABI 準拠の浮動小数点コード生成オプションが、基となるハードウェアの最大の性能を引き出すわけではありません。SPARC ABI に準拠する必要がない場合は、存在する SPARC ハードウェアをより有効に活用するために、32 ビットモードではコード生成オプション -xtarget=native を、64 ビットモードでは -xtarget=native64 を使用してください。