Oracle Solaris Studio 12.2: Fortran ユーザーズガイド

3.4.175 -xtarget=t

命令セットと最適化の対象とするプラットフォームを指定します。

t には nativenative64genericgeneric64platform-name のいずれかを指定します。

-xtarget オプションは、実際のプラットフォームで発生する、-xarch-xchip-xcache をまとめて指定することができます。-xtarget の意味は = のあとに指定した値を展開したものにあります。

対象となるハードウェア (コンピュータ) の正式な名前をコンパイラに指定した方がパフォーマンスが優れているプログラムもあります。プログラムのパフォーマンスが重要な場合は、対象となるハードウェアを正確に指定してください。これは特に、新しい SPARC プロセッサ上でプログラムを実行する場合に当てはまります。ただし、ほとんどのプログラムおよびより旧式の SPARC プロセッサでは、パフォーマンス向上はごくわずかなので、generic の指定で十分です。

-xtarget の実際の展開値は、リリースによって異なる可能性があります。コンパイラが使用する展開値は、-dryrun フラグを使用して判断できます。


demo% f95 -dryrun -xtarget=ultra4plus
###     command line files and options (expanded):
### -dryrun -xarch=sparcvis 
    -xcache=64/32/4/1:2048/64/4/2:32768/64/4/2 -xchip=ultra4plus

特定の指定プラットフォームでの —xtarget 展開は、同じプラットフォームでの —xtarget=native 指定の展開と異なる場合があることに注意してください。

3.4.175.1 一般的なプラットフォームとネイティブプラットフォーム

native

ホストプラットフォーム (32 ビット) で、パフォーマンスを最適化します。

—m32 —xarch=native —xchip=native —xcache=native に展開します。

native64

廃止。代わりに、—xtarget=native —m64 を使用してください。

generic

たいていの 32 ビットプラットフォームで最高のパフォーマンスが得られるようにします。

これがデフォルトで、次のように展開します。-m32 -xarch=generic -xchip=generic -xcache=generic

generic64

廃止。代わりに -xtarget=generic -m64 を使用してください。

platform-name

指定したプラットフォームで、最高のパフォーマンスが得られるようにします。次に一覧で表示します。

3.4.175.2 SPARC プラットフォーム

次の表は、コンパイラが認識できる、一般に使用されているシステムプラットフォーム名の一覧です。

表 3–18 一般に使用されている -xtarget システムプラットフォームの展開

-xtarget= プラットフォーム名

-xarch  

-xchip  

-xcache  

sparc64vi

sparcfmaf

sparc64vi

128/64/2:5120/64/10

sparc64vii

sparcima

sparc64vii

64/64/2:5120/256/10

ultra

sparcvis

ultra

16/32/1:512/64/1

ultra1/140

sparcvis

ultra

16/32/1:512/64/1

ultra1/170

sparcvis

ultra

16/32/1:512/64/1

ultra1/200

sparcvis

ultra

16/32/1:512/64/1

ultra2

sparcvis

ultra2

16/32/1:512/64/1

ultra2/1170

sparcvis

ultra

16/32/1:512/64/1

ultra2/1200

sparcvis

ultra

16/32/1:1024/64/1

ultra2/1300

sparcvis

ultra2

16/32/1:2048/64/1

ultra2/2170

sparcvis

ultra

16/32/1:512/64/1

ultra2/2200

sparcvis

ultra

16/32/1:1024/64/1

ultra2/2300

sparcvis

ultra2

16/32/1:2048/64/1

ultra2e

sparcvis

ultra2e

16/32/1:256/64/4

ultra2i

sparcvis

ultra2i

16/32/1:512/64/1

ultra3

sparcvis2

ultra3

64/32/4:8192/512/1

ultra3cu

sparcvis2

ultra3cu

64/32/4:8192/512/2

ultra3i

sparcvis2

ultra3i

64/32/4:1024/64/4

ultra4

sparcvis2

ultra4

64/32/4:8192/128/2

ultra4plus

sparcvis2

ultra4plus

64/32/4/1:2048/64/4/2:32768/64/4/2

ultraT1

sparc

ultraT1

8/16/4/4:3072/64/12/32

ultraT2

sparcvis2

ultraT2

8/16/4:4096/64/16

ultraT2plus

sparcvis2

ultraT2plus

8/16/4:4096/64/16

ultraT3

sparcvis3

ultraT3

8/16/4:6144/64/24

64 ビット対応のプラットフォームでの 64 ビット Solaris OS 向けのコンパイルは、-m64 フラグで指示します。-xtarget を指定する場合は、次に示すように -xtarget フラグのあとに -m64 を表示する必要があります。


-xtarget=ultra2   ...   -m64

この指定がないと、デフォルトの 32 ビットメモリーモデルが使用されます。

3.4.175.3 x86 プラットフォーム

x86 システムで有効な -xtarget プラットフォーム名は次のとおりです。

generic、native、pentium、pentium_pro、pentium3、pentium4woodcrest、penryn、 nehalem、barcelonaopteron

表 3–19 x86 プラットフォームでの -xtarget の値

-xtarget=  

-xarch  

-xchip  

-xcache  

generic

generic

generic

generic

opteron

sse2

opteron

64/64/2:1024/64/16

pentium

386

pentium

generic

pentium_pro

pentium_pro

pentium_pro

generic

pentium3

sse

pentium3

16/32/4:256/32/4

pentium4

sse2

pentium4

8/64/4:256/128/8

nehalem

sse4_2

nehalem

32/64/8:256/64/8: 8192/64/16

penryn

sse4_1

penryn

2/64/8:4096/64/16

woodcrest

ssse3

core2

32/64/8:4096/64/16

barcelona

amdsse4a

amdfam10

64/64/2:512/64/16

64 ビット対応の x86 プラットフォームでの 64 ビット Solaris OS 向けのコンパイルは、-m64 フラグで指示します。たとえば、-xtarget=opteron でのコンパイルは、必要でもなく、十分でもありません。-xtarget を指定する場合は、次に示すように -xtarget フラグのあとに -m64 オプションを表示する必要があります。


-xtarget=opteron -m64

この指定がないと、32 ビット x86 用のコンパイルに戻ります。