オプティマイザ用のキャッシュ特性を定義します。この定義によって、特定のキャッシュが使用されるわけではありません。
このオプションは単独で指定できますが、-xtarget オプションのマクロ展開の一部です。-xtarget オプションによって指定された値を変更するのが主な目的です。
このリリースで、キャッシュを共有できるスレッド数を指定するオプションの特性 [/ti] が導入されました。t の値を指定しない場合のデフォルトは 1 です。
c には次のいずれかを指定します。
generic
native
s1/ l1/a 1[/t1]
s1/l1/a 1[/t1]:s2/l 2/a2[ /t2]
s1/l1/a 1[/t1]:s2/l 2/a2[ /t2]:s3/l 3/a3[ /t3]
s、l、a、t の各特性の定義は次のとおりです。
si |
レベル i のデータキャッシュのサイズ (キロバイト単位) |
li |
レベル i のデータキャッシュのラインサイズ (バイト単位) |
ai |
レベル i のデータキャッシュの結合特性 |
ti |
レベル i でキャッシュを共有するハードウェアスレッドの数 |
次に、-xcache の値を示します。
表 B–17 -xcache のフラグ
フラグ |
意味 |
---|---|
generic |
これはデフォルトです。ほとんどの SPARC プロセッサに良好なパフォーマンスを提供し、どの x86、SPARC の各プロセッサでも著しいパフォーマンス低下が生じないようなキャッシュ特性を使用するように、コンパイラに指示します。 これらの最高のタイミング特性は、新しいリリースごとに、必要に応じて調整されます。 |
native |
ホスト環境に対して最適化されたパラメータを設定します。 |
s1/l1/a 1[/t1] |
レベル 1 のキャッシュ特性を定義します。 |
s1/l1/a 1[/t1]:s2/l 2/a2[ /t2] |
レベル 1 と 2 のキャッシュ特性を定義します。 |
s1/l1/a 1[/t1]:s2/l 2/a2[ /t2]:s3/l 3/a3[ /t3] |
レベル 1、2、3 のキャッシュ特性を定義します。 |
例: -xcache=16/32/4:1024/32/1 では、次の内容を指定します。
レベル 1 のキャッシュ 16K バイト ラインサイズ 32 バイト 4 ウェイアソシアティブ |
レベル 2 のキャッシュ 1024K バイト ラインサイズ 32 バイト 直接マップ結合 |