PrestoserveTM は、不揮発性メモリーに書き込まれたデータブロックをキャッシュすることにより、ディスク入出力アクセスの頻度を減少させる NFS アクセラレータです。キャッシュされたデータは、必要に応じて非同期にディスクにフラッシュされます。
pstest は、以下の 3 種類の検査を行って Prestoserve アクセラレータの機能を検査します。
ボードのバッテリー検査
バッテリーの電源レベルが適切かどうかを確認するために、pstest は、他の 2 つの検査を実行する前にこの検査を実行します。バッテリーの不良を検出すると、fatal error というメッセージを出力して終了します。
ボードのメモリー検査
この検査は、ボードのメモリー全体を 1 つのプロセスアドレス空間に割り当ててボードをロックし、複数のアクセスが行われないようにします。次に、割り当てられたアドレス空間を順番に移動しながら、各空間で、文字、short、long の比較をします。pstest は、この検査を 2 回実施します。
ボードの性能とファイル入出力アクセスの検査
この検査は、同期した読み取り・書き込みアクセスだけを行います。pstest は、オンボードのメモリー量に等しいデータをメモリーキャッシュに書き込み、そのデータを読み戻して比較します。データの書き込みに要する時間は 2 回測定されます。1 回目は Prestoserve アクセラレータを無効にした状態で測定し、2 回目は有効にします。1 回目の値を 2 回目の値で割ると、性能比が得られます。テストの 3 回のパスでこの比が 1:5 以下場合、Prestoserve ボードに問題があるかどうかを判断することはできません。
Prestoserve アクセラレータは、テスト中に /opt パーティションを高速化しますが、このパーティションは遠隔からマウントされていることもあるため、Prestoserve ボード自体に問題があることも、問題がないこともあります。場合によっては、ネットワーク性能に問題があることも考えられます。いずれにしても、性能比が 1:5 より小さい場合は、警告メッセージが表示されます。
一貫性のある結果を得るようにするには、Prestoserve 製品をインストールした際に、できるだけ多くの多重テストを実行します。このテストは、オプションメニューで選択します。デフォルトは 2 ですが、最大は 10 です。ただし、pstest と kmem を同時に実行すると、SunVTS から誤ったエラーが返されることがあるため、両方のテストを同時には実行しないでください。
テストモード |
説明 |
---|---|
機能テストモード(オフライン) |
ボードバッテリー検査サブテスト、ボードメモリー検査サブテスト、ボード性能およびファイル入出力アクセス検査サブテストを実行します。pstest は、このモードでのみ実行できます。 |
/opt/SUNWvts/bin/pstest 標準引数 -o e,l,f=テストファイルディレクトリ
表 27-2 pstest のコマンド行構文
引数 |
説明 |
---|---|
e |
性能比が 1:5 以下の場合に、警告メッセージを表示する性能警告を有効にします。 |
l |
長時間メモリーテストを有効にします。 |
f=テストファイルディレクトリ |
オプションのテストファイルのディレクトリを指定します。 |
64 ビットのテストは、sparcv9 サブディレクトリに格納されています (/opt/SUNWvts/bin/sparcv9/テスト名)。このディレクトリにテストが存在しない場合、そのテストは、32 ビットのテストとしてだけ実行することができます。詳細は、「32 ビットテストと 64 ビットテスト」を参照してください。
|
エラーメッセージ |
考えられる原因 |
対処方法 |
---|---|---|---|
6001 |
Checking prstatus failed: |
|
|
6002 |
Failed to turn prestoserve DOWN: |
|
|
6003 |
File I/O test failed with low performance ratio: 数値 |
|
/tmp に Prestoserve が設定されているかどうかを調べてください。 |
6004 |
byte compare: location = アドレス, observed = 数値, expected = 数値 |
|
|
6005 |
word compare: location = アドレス, observed = 数値, expected =数値 |
|
|
6006 |
(data type) long compare: location = アドレス, observed = 数値, expected = 数値 |
|
|
6007 |
lseek() failed: |
|
|
6008 |
NVRAM write failed: |
|
|
6009 |
NVRAM read failed: |
|
|
6010 |
Failed to get status of Prestoserve failed: |
|
|
6011 |
Failed to reinitialize Prestoserve: |
|
|
6012 |
Failed to turn prestoserve UP: |
|
|
6013 |
Failed to munmap prestoserve: |
|
|
6014 |
File write failed: |
|
|
6015 |
File read failed: |
|
|
6016 |
Data compare failed |
|
|
6017 |
Failed to restore prestoserve state: %s |
|
|
6018 |
Prestoserve test is applicable in Functional test only |
|
|
8001 |
Failed to open prestoserve board: |
Prestoserve ハードウェアが組み込まれていません。 |
|
NVSIMM/NVRAM SBus ボードが正しく装着されていません。 |
|
||
Prestoserve ソフトウェアがインストールされていません。 |
|
||
スーバーユーザーモードではありません。 |
|
||
8002 |
Prestoserve is in the ERROR state |
ディスクドライブでエラーが発生しました。 |
|
8003 |
Some batteries are not good or not enabled |
|
|
8004 |
memory_check (pass パス ID) failed |
|
|
8005 |
fileio_check (pass パス ID) failed |
|
|
8006 |
File I/O test failed (Prestoserve down) |
|
|
8007 |
File I/O test failed (Prestoserve up) |
|
|
8008 |
Open %s also failed: %s. Please enter test file directory |
|
|
8009 |
PRESTOSERVE TESTS FAILED! |
|
|