SX アプリケーションの性能強化項目の 1 つに、物理的に連続した DRAM の利用があります。このマニュアルでは、SX の物理的に連続した DRAM のことを SXDRAM と呼びます。このマニュアルでは、以下について説明します。
SX 高速化アプリケーションから排他的に使用できるように、SXDRAM を設定する手順
SXDRAM を使用するアプリケーションのコンテキスト
SXDRAM を使用する利点
SX は、SPARCstation 10SX または SPARCstation 20 ワークステーションで動作するアプリケーションのグラフィックスおよびイメージの表示を高速化します。高速化は、2 次元および 3 次元グラフィックス描画、マルチメディア、および画像処理を含めた、広い範囲のピクセル操作に有効です。
SMC に組み込まれた SX アクセラレータは、システム主記憶 (DRAM) およびビデオメモリー (VRAM) の操作を直接高速化することができます。SMC は、以下のものから構成されています。
システム主記憶 (DRAM) とビデオメモリー (VRAM、フレームバッファー) をシステムメモリーバスに接続する誤り訂正符号メモリーコントローラ
SX のイメージングおよびグラフィックスアクセラレータ
設定によって、SXDRAM を割り当てることができます。SXDRAM を割り当てると、SX は SXDRAM のアクセスを最適化することができ、SXDRAM の操作を迅速に実行します。しかし、割り当てられたメモリーは、他のアプリケーションでは使用することができません。たとえば、48 MB のシステムで、SXDRAM に 16 MB を割り当てると、システムは 32 MB のシステムとして実行されます。
SXDRAM に割り当てたメモリーは、システムで使用することができなくなります。SXDRAM を割り当てるときには、システム用に残るメモリーの量を考慮してください。システム性能が低下しないように、システム用に十分なメモリーを残してください。
SXDRAM を割り当てると、アプリケーションの性能が向上します。デフォルトの構成では、SXDRAM は使用されません。Z バッファリングまたはダブルバッファリングを単独で使用するときは、4 MB の SXDRAM を割り当てる必要があります。Z バッファリングおよびダブルバッファリングを両方使用するときは、8 MB の SXDRAM を割り当てる必要があります。
イメージの回転操作に必要な SXDRAM の大きさは、イメージのサイズと同じですが、1 MB の倍数に切り上げます。たとえば、1 ピクセル当り 4 つの 8 ビットチャネルを持つ 1200 x 1200 のイメージは、5.493 MB になりますが、6 MB の SXDRAM が必要になります。
SXDRAM の割り当てサイズを計算するには、個々の要求を合計し、それを 1 MB の倍数に切り上げます。
この節では、SXDRAM を設定する手順を示します。システムのソフトウェアとハードウェアによる制限事項についても述べます。SXDRAM を設定する前に、システムのメモリーマップを理解する必要があります。
SPARCstation 10SX と SPARCstation 20 のメモリー構成には、以下の違いがあります。
スロットの物理的順序が異なります。
VSIMM を使用できるスロットが異なります。
SPARCstation 20 で SXDRAM を設定する場合は、SPARCstation 20 のメモリーバンクの配置とSXDRAM の設定を参照してください。
SPARCstation 10SX には 2 つのメモリーバンクがあります。バンク 0 は、スロット 0、1、2 、3 から成り、バンク 1 は、スロット 4、5、6 、7 から成ります。SPARCstation 10SX でのメモリーの設定では、これらの 8 つのスロットを利用することができます。各メモリーバンクには、物理アドレス空間の 256 MB を割り当てることができます。各メモリーバンクの各スロットは、物理アドレス空間の 64 MB を割り当てます。
バンク 0 の先頭物理アドレスは、0 です。バンク 1 の先頭物理アドレスは、0x10000000 です。
スロット 4 には、VSIMM を設定します。スロット 5 には、DSIMM または VSIMM (CG14) を設定することができます。SPARCstation 10SX は、16 MB と 64 MB の DSIMM と、4 MB と 8 MB の VSIMM をサポートしています。各スロットには、スロットに設定されている SIMM の大きさや種類に関係なく、物理アドレス空間の 64 MB を割り当てます。
すべてのスロットに 16 MB DSIMM を設定したシステムの物理アドレスマップを以下に示します。
表 2-1 SPARCstation 10SX システムのメモリー配置 (16 MB DSIMM のみ)SIMM スロット | DSIMM サイズ | 物理アドレス |
---|---|---|
スロット 7 | 16 MB DSIMM | 0x1c000000 |
スロット 3 | 16 MB DSIMM | 0xc000000 |
スロット 6 | 16 MB DSIMM | 0x18000000 |
スロット 2 | 16 MB DSIMM | 0x8000000 |
スロット 5 | 16 MB DSIMM | 0x14000000 |
スロット 1 | 16 MB DSIMM | 0x4000000 |
スロット 4 | 16 MB DSIMM | 0x10000000 |
スロット 0 | 16 MB DSIMM | 0x0 |
スロット 4 に 4 MB VSIMM を 1 つ設定し、残りのスロットに 16 MB DSIMM を設定したシステムの物理アドレスマップを以下に示します。
表 2-2 SPARCstation 10SX システムのメモリー配置 (4 MB VSIMM x 1、16 MB DSIMM x 7)SIMM スロット | DSIMM/VSIMM サイズ | 物理アドレス |
---|---|---|
スロット 7 | 16 MB DSIMM | 0x1c000000 |
スロット 3 | 16 MB DSIMM | 0xc000000 |
スロット 6 | 16 MB DSIMM | 0x18000000 |
スロット 2 | 16 MB DSIMM | 0x8000000 |
スロット 5 | 16 MB DSIMM | 0x14000000 |
スロット 1 | 16 MB DSIMM | 0x4000000 |
スロット 4 | 4 MB VSIMM | 0xf0000000 |
スロット 0 | 16 MB DSIMM | 0x0 |
このように、16 MB DSIMM で構成されたシステムでは、DRAM の物理的に連続したブロックは最大で 16 MB です。ただし、このようなシステムでは SXDRAM の複数のブロックを割り当てることができます。単一のブロックで 16 MB 以上の SXDRAM を設定できるようにするには、システムを 64 MB DSIMM で構成する必要があります。
1 つの 4 MB VSIMM と 7 つの 64 MB DSIMM で構成した例を以下に示します。
表 2-3 SPARCstation 10SX システムのメモリー配置 (4 MB VSIMM x 1、64 MB DSIMM x 7)SIMM スロット | DSIMM/VSIMM サイズ | 物理アドレス |
---|---|---|
スロット 7 | 64 MB DSIMM | 0x1c000000 |
スロット 3 | 64 MB DSIMM | 0xc000000 |
スロット 6 | 64 MB DSIMM | 0x18000000 |
スロット 2 | 64 MB DSIMM | 0x8000000 |
スロット 5 | 64 MB DSIMM | 0x14000000 |
スロット 1 | 64 MB DSIMM | 0x4000000 |
スロット 4 | 4 MB VSIMM | 0xf0000000 |
スロット 0 | 64 MB DSIMM | 0x0 |
この配置では、物理アドレス 0 で始まる 256 MB (スロット 0、1、2、3) の連続したブロックと、物理アドレス 0x14000000 で始まる 192 MB (スロット 4、5、6、7) のブロックとなります。したがって、この構成でインストールできる DRAM は最大で 448 MB です。
システムは、通常、 16 MB と 64 MB の DSIMM と、VSIMM を持っています。システムの構成では多数の組み合わせが可能です。
VSIMM と DSIMM の個々の組み合わせで、SXDRAM の最大のブロックを割り当てる場合は、この節の例を参照してください。
次の節では、SPARCstation 20 の特徴について説明します。その次の 2 つの節では、システムのソフトウェア制限事項と、推奨する構成について説明します。
SPARCstation 20 のスロットの物理的な順序は、SPARCstation 10SX のスロットとは異なります。VSIMM 用として使用できるスロットについても、同様に異なります。配置の比較を以下に示します。
表 2-4 SPARCstation 10SX と SPARCstation 20 のスロット位置の比較SPARCstation 10SX のスロット名 | SPARCstation 20 のスロット名 |
---|---|
スロット 7 | スロット 0 |
スロット 3 | スロット 2 |
スロット 6 | スロット 5 |
スロット 2 | スロット 3 |
スロット 5 (VSIMM1 にもなる) | スロット 6 |
スロット 1 | スロット 1 |
スロット 4 (VSIMM0 にもなる) | スロット 7 (VSIMM0 にもなる) |
スロット 0 | スロット 4 (VSIMM1 にもなる) |
以下の制限は SPARCstation 10SX について説明していますが、SPARCstation 20 に対しても適用されます。
1 番目のスロット (スロット 0) には、必ず DSIMM を設定してください。
SPARCstation 10SX を適切な性能で使用するために必要なメモリーは最低 32 MB です。したがって、SXDRAM を割り当てるには、 32 MB 以上の DRAM を設定する必要があります。sxconfig(1M) コマンドの -l オプションを使用して、システム用に割り当てるメモリーを最小に設定することができます。システムに実装された DRAM のサイズと設定された最小値 (デフォルトでは 32 MB) の差が、SXDRAM 用に割り当てることのできるメモリー量の最大値です。
割り当ての必要な物理的に連続したメモリーのサイズは、1 MB の整数倍で指定する必要があります。すなわち、割り当て可能な最小のサイズは、1 MB です。
VSIMM は、SPARCstation 10SX のスロット 4 あるいは 5 にのみインストールすることができます。VSIMM が 1 つだけの場合、スロット 4 か 5 のどちらか にインストールします。スロット 5 に VSIMM をインストールするには、AVB (Auxiliary Video Board) カードが必要です。このカードは、SPARCstation 10SX には付属していません
16 MB と 64 MB の DSIMM を組み合わせる場合は、スロット 0 に 16 MB の DSIMM をインストールしてください。
メモリーシステムを、16 MB の DSIMM だけで構成する場合は、1 番目の DSIMM をスロット 0 にインストールすれば、他の DSIMM はどのスロットにインストールしても構いません。
1 つのメモリーバンク内では、大きい順に DSIMM をインストールします (すべての DSIMM が同じ大きさの場合は、順序は問題になりません)。つまり、64 MB の DSIMM と 16 MB の DSIMM の組み合わせの場合、最も小さい番号のスロットに 64 MB の DSIMM をインストールし、そのすぐ次のスロットに 16 MB の DSIMM をインストールします。
64 MB の DSIMM と 16 MB の DSIMM を持つメモリーサブシステムを設定する場合は、以下の例を参考してください。
システム構成: VSIMM x 1、16 MB の DSIMM x 2、64 MB の DSIMM x 2
以下のように設定することができます。
スロット 0 に 16 MB の DSIMM x 1
スロット 7 に 16 MB の DSIMM x 1
スロット 6 に 64 MB の DSIMM x 1
スロット 5 に 64 MB の DSIMM x 1
スロット 4 に VSIMM x 1
または
スロット 0 に 16 MB の DSIMM x 1
スロット 3 に 16 MB の DSIMM x 1
スロット 2 に 64 MB の DSIMM x 1
スロット 1 に 64 MB の DSIMM x 1
スロット 4 または 5 に VSIMM x 1
オペレーティングシステムには、物理的に連続したメモリーを割り当て、および管理をするためのドライバが含まれています。起動処理の時点では、メモリーの断片化が少なく、物理的に連続した大きいメモリーブロックが見つかる可能性が高いため、メモリーは起動時に割り当てます。
割り当てる SXDRAM の量は、sxconfig(1M) コマンドで指定することができます。sxconfig は、スーパーユーザー特権を持つプロセスのみ実行することができます。以下に sxconfig コマンドの使用例を示します。
# sxconfig -n |
すべての構成パラメタを省略時の値に復元するには、以下のように入力してください。
# sxconfig -d |
デフォルトでは、0 MB の物理的に連続したメモリーが割り当てられ、断片化されずに、32 MB のメモリーがシステム使用に割り当てられます。
ドライバ構成ファイルの現在の構成パラメタを表示するには、以下のように入力します。
# sxconfig -c |
構成パラメタを変更した後で、システムを再起動していない場合は、表示される値は実際のシステムの設定値を反映していません。sxconfig の使用方法についての詳細は、マニュアルページを参照してください。
xconfig コマンドは、ディレクトリ /platform/SUNW,SPARCstation-10,SX/sbin にあります。シェル環境変数 PATH に、このディレクトリを含めます。PATH環境変数に /platform/SUNW,SPARCstation-10,SX/sbin ディレクトリが含まれているか確認するには、以下のように入力します。
# echo $PATH |
/bin:/etc/:/usr/bin: |
Bourne シェルまたは Korn シェルで、表示された行に /platform/SUNW,SPARCstation-10,SX/sbin が含まれていない場合には、以下のように入力します。
# PATH=$PATH:/platform/SUNW,SPARCstation-10,SX/sbin export PATH |
Bourne シェルの場合は、続けて以下のように入力します。
# export PATH |
# setenv PATH “$PATH /platform/SUNW,SPARCstation-10,SX/sbin” |
16 MB のメモリーを割り当てるには、以下のように入力します。
# sxconfig -s 16 |
上記のコマンドは、Solaris 2.5 を使用している場合の例です。Solaris 2.5 よりも以前のバージョンを使用している場合は、/platform/SUNW,SPARCstation-10,SX/bin を /usr/kvm に置き換えてください。
16 MB の DSIMM で構成されたシステムの場合、単一のブロックに割り当てることができる SXDRAM は、最大 16 MB です。そのようなシステム上で、16 MB を越えるメモリーを SXDRAM に割り当てる場合は、sxconfig コマンドを使用します。例えば、16 MB の DSIMM で構成されたシステムで、32 MB のメモリーを割り当てるには、以下のように入力します。
# sxconfig -s 32 -f |
sxconfig を実行した後にシステムを再起動することによって、システムのページプールに、指定された大きさのメモリーの連続したブロックを検索します。必要な大きさのメモリーブロックが見つかると、割り当てられます。上記のように、断片化 (-f フラグ) を指定して、16 MB 以上を設定しようとしても、検索に失敗すると、オペレーティングシステムは、16 MB の連続したブロックを探します。この大きさのブロックがなければ、オペレーティングシステムは 256 KB の連続したブロックを探します。
SXDRAM の設定が終了したら、以下のように入力してシステムを停止します。
# halt |
OpenBoot PROM のプロンプトが、コンソールに表示されます。
ok |
ok boot disk -rv |
-r オプションは、再構成起動を指定します。-v オプションは、冗長モードを指定します。起動処理で、必要な量の SXDRAM が割り当てられます。メッセージの一覧を、付録 A 「起動メッセージ」 に示します。
システムが再起動された後、ログインして OpenWindows を起動し、アプリケーションを起動します。