c には次のいずれかを指定します。
generic
native
s1/ l1/a1[/t1]
s1/ l1/a1[/t1] :s2/l2 /a2[/t2]
s1/ l1/a1[/t1] :s2/l2 /a2[/t2] :s3/l3 /a3[/t3]
si/li /ai/ti の定義は次のとおりです。
si レベル i のデータキャッシュのサイズ (キロバイト単位) li レベル i のデータキャッシュの行サイズ (バイト単位) ai レベル i のデータキャッシュの結合性 ti レベル i でキャッシュを共有するハードウェアスレッドの数 (省略可能)
このオプションは、オプティマイザが使用できるキャッシュ特性を指定します。特別なキャッシュ特性が必ず使用されるわけではありません。
このオプションは、-xtarget オプションを展開した機能の一部です。-xtarget オプションで暗黙に指定された -xcache 値の指定を変更する場合に、このオプションを単独で使用します。
表 3–15 -xcache の値
値 |
意味 |
---|---|
generic |
どのプロセッサでもパフォーマンスが著しく低下することがないように、キャッシュ特性を定義します。これはデフォルト値です。 |
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 のキャッシュ特性を定義します。 |
例: -xcache=16/32/4:1024/32/1 では、次の内容を指定します。
レベル 1 のキャッシュ: 16K バイト、32 バイト行サイズ、4 面結合
レベル 2 のキャッシュ: 1024K バイト、32 バイト行サイズ、ダイレクトマップ結合