名称
region_hash_locks ― 領域スピンロックプールのサイズの指定
説明
実行中のプロセスやメモリー使用量に関する情報を格納しているグローバルカーネル構造は、頻繁に、複数のスレッドから同時にアクセスされたり変更されたりします。
これらの構造は、競合状態にならないよう、スピンロック (同期に使用されるカーネルデータ構造)
で保護されます。これにより、スピンロック「ホルダ」のスレッドだけが処理を進めることができ、その間、その構造にアクセスしようとする他のすべてのスレッドは待機しなければなりません。
そのようなデータ構造の各インスタンスを保護する必要があり、インスタンスが複数ある場合は、ハッシュされたスピンロックが使用されます。
すべてのインスタンスに対して単一のスピンロックを使用すると、過剰な競合が発生します。一方、構造ごとに 1 つのスピンロックを使用すると、任意の時点において大部分のロックが未使用状態になり、メモリーの無駄になります。
ハッシュされたロックのプールを割り当てると、ハッシュ関数が構造のグループごとに 1 つのロックをピックするので、メモリーを節約しながら、競合を少なくすることができます。
この調整パラメータは、そのようなプールのサイズを、領域データ構造のスピンロックについて設定します。
この調整パラメータの変更を行う対象ユーザー
当社のフィールドエンジニアのみ。
変更に関する制限事項
この調整パラメータの変更は、次回リブート時に有効になります。
この調整パラメータの値を大きくする場合
メモリーの競合が少なく、多数の領域構造に起因するロックの競合が多いシステムに対しては、この調整パラメータの値を大きくします。
通常、そのようなシステムは、大量のプロセスやスレッドがある大規模メモリーシステムです。
この調整パラメータの値を大きくした場合の影響
カーネルのメモリー使用量が増えます。
この調整パラメータの値を小さくする場合
物理メモリーの競合が多く、プロセスやスレッドがほとんどないシステムに対してのみ、この調整パラメータの値を小さくします。
テーブルを小さくしてメモリーを節約すると、そのメモリーが一般用途向けに解放されますが、多数の領域が存在してロックを要求している場合は、競合が発生する可能性があります。
この調整パラメータの値を小さくした場合の影響
領域ロックのハッシュ競合がより発生しやすくなります。それによって、2 つ以上の領域間で共有されるロックをスレッドが待たなければならない可能性が増大します。
同時に変更する必要がある他の調整パラメータ
ありません。
警告
HP-UX のすべてのカーネル調整パラメータは、リリースごとに異なります。
このパラメータは、HP-UX の今後のリリースにおいて、削除されるか、意味が変わる可能性があります。
HP 社または他のベンダーのカーネルソフトウェアをインストールすると、
カーネル調整パラメータが変更されることがあり、その場合、 インストール後に、カーネル調整パラメータがデフォルト値でも推奨値でも
ない値に設定されていることがあります。 カーネル調整パラメータの値への影響については、
インストールするカーネルソフトウェアのドキュメントを参照してください。
工場インストールされたカーネルソフトウェアについては、 http://docs.hp.com/ja の 『『HP-UX
リリースノート』』 を参照してください。
著者
region_hash_locks は、HP で開発されました。