Sun Studio 12: C++ ユーザーズガイド

A.2.111 -xcache=c

オプティマイザ用のキャッシュ特性を定義します。この定義によって、特定のキャッシュが使用されるわけではありません。


注 –

このオプションは単独でも使用できますが、-xtarget オプションが展開されたものの一部です。このオプションの主な目的は、-xtarget オプションにより指定される値を変更することです。


このリリースで、キャッシュを共有できるスレッド数を指定するオプションの特性 [/ti] が導入されました。

A.2.111.1 値

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