リソースプールは、プロセッサセットおよびスレッドスケジューリングクラスを管理するためのフレームワークを提供します。リソースプールはシステムリソースの区分に使用されます。リソースプールを使用すると、作業負荷によって特定のリソースが重複して消費されないように、作業負荷を分離できます。リソースを確保すると、さまざまな作業負荷が混在するシステム上で予測どおりの性能を得ることができます。
リソースプールの概要およびリソースプールを管理するコマンドの例については、Oracle Solaris 11.3 でのリソースの管理 の 第 12 章, リソースプールについておよびOracle Solaris 11.3 でのリソースの管理 の 第 13 章, リソースプールの作成と管理のタスクを参照してください。
プロセッサセットがシステム上の CPU を区切られたエンティティーにグループ化し、1 つまたは複数のプロセスをそこで排他的に実行できます。プロセッサセットの範囲を超えてプロセスを拡張したり、ほかのプロセスをプロセッサセットに拡張したりすることはできません。プロセッサセットを使用すると、特性の似たタスクを一緒にグループ化して、CPU 使用のハード上限を設定できます。
リソースプールフレームワークを使用すると、CPU カウントの最大要件と最小要件を指定してソフトプロセッサセットを定義できます。また、フレームワークはそのプロセッサセット用にハード定義されたスケジューリングクラスを提供します。
ゾーンは、ゾーン構成の pool プロパティーを使用してリソースプールにバインドできます。ゾーンはゾーンの作成時に指定したプールにバインドされます。プール構成は大域ゾーンからのみ変更できます。ゾーンは複数のプールにまたがることはできません。ゾーン内のすべてのプロセスは同じプールで実行されます。ただし、複数のゾーンを同じリソースプールにバインドすることはできます。
リソースプールは次を定義します。
プロセッサセットグループ
スケジューリングクラス
スケジューリングクラスは、アルゴリズムロジックに基づいたスレッドにさまざまな CPU アクセス特性を提供します。スケジューリングクラスには次が含まれます。
リアルタイムスケジューリングクラス
対話型スケジューリングクラス
固定優先度スケジューリングクラス
時分割スケジューリングクラス
公平配分スケジューリングクラス
公平配分スケジューラの概要および公平配分スケジューラを管理するコマンドの例については、Oracle Solaris 11.3 でのリソースの管理 の 第 8 章, 公平配分スケジューラについておよびOracle Solaris 11.3 でのリソースの管理 の 第 9 章, 公平配分スケジューラの管理のタスクを参照してください。
CPU セット内でスケジューリングクラスを混在させないでください。スケジューリングクラスが CPU セット内で混在していると、システムパフォーマンスが不安定で予測できなくなる可能性があります。プロセッサセットを使用して、アプリケーションを特性ごとに分離してください。アプリケーションが最適なパフォーマンスを発揮するようにスケジューリングクラスを割り当てます。個々のスケジューリングクラスの特性については、priocntl(1) を参照してください。
リソースプールの概要およびプールをいつ使用するかについては、リソースプールを参照してください。