オプティマイザ用のキャッシュ特性を定義します。
c には以下のいずれかを指定します。
generic (SPARC)(x86)
s1/l1/a1
s1/l1/a1:s2/l2/a2
s1/l1/a1:s2/l2/a2:s3/l3/a3
si |
レベル i のデータキャッシュのサイズ (キロバイト単位) |
li |
レベル i のデータキャッシュのラインサイズ (バイト単位) |
ai |
レベル i のデータキャッシュの結合特性 |
このオプションは単独で指定できますが、-xtarget オプションの展開の一部です。 -xtarget オプションによって指定された値を変更することが主な目的です。
このオプションは、オプティマイザが使用できるキャッシュ特性を指定します。特定のキャッシュ特性が必ず使用されるわけではありません。
表 2-5 -xcache の値
値 |
意味 |
---|---|
generic |
ほとんどの x86、SPARC の各アーキテクチャで良好なパフォーマンスを得るためのキャッシュ特性を定義します。 これはデフォルトです。ほとんどの SPARC プロセッサに良好なパフォーマンスを提供し、どの x86、SPARC の各プロセッサでも著しいパフォーマンス低下が生じないようなキャッシュ特性を使用するように、コンパイラに指示します。 これらの最高のタイミング特性は、新しいリリースごとに、必要に応じて調整されます。 |
s1/l1/a1 |
レベル 1 のキャッシュ特性を定義します。 |
s1/l1/a1:s2/l2/a2 |
レベル 1 と 2 のキャッシュ特性を定義します。 |
s1/l1/a1:s2/l2/a2:s3/l3/a3 |
レベル 1、2、3 のキャッシュ特性を定義します。 |
例: -xcache=16/32/4:1024/32/1 では、以下の内容を指定します。
レベル 1 のキャッシュ |
レベル 2 のキャッシュ |
---|---|
16K バイト |
1024K バイト |
32 バイトのラインサイズ |
32 バイトのラインサイズ |
4 ウェイアソシアティブ |
ダイレクトマップ結合 |