c には次の値のいずれかを指定します。
表 A–25 -xcache の値
値 |
意味 |
---|---|
generic |
これはデフォルトです。ほとんどの SPARC プロセッサに良好なパフォーマンスを提供し、どの x86、SPARC の各プロセッサでも著しいパフォーマンス低下が生じないようなキャッシュ特性を使用するように、コンパイラに指示します。 これらの最高のタイミング特性は、新しいリリースごとに、必要に応じて調整されます。 |
native |
ホスト環境に対して最適化されたパラメータを設定します。 |
s1/l1/a1[/t1] |
レベル 1 のキャッシュ属性を定義します。 |
s1/l1/a1[/t1]:s2/l2/a2[/t2] |
レベル 1 とレベル 2 のキャッシュ属性を定義します。 |
s1/l1/a1[/t1]:s2/l2/a2[/t2]:s3/l3/a3[/t3] |
レベル 1、レベル 2、レベル 3 のキャッシュ属性を定義します。 |
キャッシュ属性 si/li/ai/ti の定義は、次のとおりです。
属性 |
定義 |
---|---|
si |
レベル i のデータキャッシュのサイズ (K バイト単位) |
li |
レベル i のデータキャッシュのラインサイズ (バイト単位) |
ai |
レベル i のデータキャッシュの結合規則 |
たとえば、i=1 は、レベル 1 のキャッシュ属性の s1/l1/a1 を意味します。
-xcache が指定されない場合、デフォルト -xcache=generic が想定されます。この値を指定すると、ほとんどの SPARC プロセッサで良好なパフォーマンスが得られ、どのプロセッサでも顕著なパフォーマンスの低下がないキャッシュ属性がコンパイラで使用されます。
t の値を指定しない場合のデフォルトは 1 です。
-xcache=16/32/4:1024/32/1 の設定内容は、次のとおりです。
レベル 1 のキャッシュ |
レベル 2 のキャッシュ |
---|---|
16K バイト |
1024K バイト |
ラインサイズ 32 バイト |
ラインサイズ 32 バイト |
4 ウェイアソシアティブ |
直接マップ結合 |
-xtarget=t