CPU マネージメント

これらの設定により、CPU 使用率を最適化できます。

CPU 管理の設定

プロセスはすべてのコアで実行でき、CPU を必要なだけ消費できます。Workspace Environment Management (WEM) の CPU 管理設定 では、個々のプロセスが使用できる CPU 容量を制限できます。CPU スパイク保護は、CPU 使用率全体を減らすようには設計されていません。CPU 使用率の過度の割合を消費するプロセスによるユーザーエクスペリエンスへの影響を低減するように設計されています。

CPU スパイク保護が有効になっている場合、プロセスが指定されたしきい値に達すると、WEM は特定の時間プロセスのプライオリティを自動的に低下させます。その後、新しいアプリケーションが起動されると、優先順位の低いプロセスよりも優先順位が高くなり、システムはスムーズに動作し続けます。

CPUスパイク保護は、迅速な「スナップショットで各プロセスを検査します. 「プロセスの平均負荷が、指定したサンプル時間の指定使用制限を超えた場合、その優先度は直ちに低下します。指定した時間が経過すると、プロセスの CPU 優先順位は前の値に戻ります。このプロセスは「スロットルされていません。 「CPUクランプと同様に、優先順位のみが低下します。

CPU スパイク保護は、個々のプロセスの少なくとも 1 つのインスタンスがしきい値を超えるまでトリガーされません。つまり、合計 CPU 消費量が指定したしきい値を超えた場合でも、少なくとも 1 つのプロセスインスタンスがしきい値を超えない限り、CPU スパイク保護はトリガーされません。しかし、そのプロセスインスタンスが CPU スパイク保護をトリガーするとすぐに、[インテリジェントな CPU 最適化を有効にする] オプションを有効にすると、同じプロセスの新しいインスタンスが (CPU) 最適化されます。

特定のプロセスが CPU スパイク保護をトリガーするたびに、イベントはエージェントのローカルデータベースに記録されます。エージェントは、ユーザーごとに個別にトリガーイベントを記録します。つまり、user1 の特定のプロセスの CPU 最適化は、user2 の同じプロセスの動作に影響を与えません。

たとえば、Internet ExplorerがCPUの50~ 60% を消費することがある場合、CPUスパイク保護を使用して、VDAのパフォーマンスを脅かすiexplore.exeインスタンスのみをターゲットにすることができます。(対照的に、CPU クランプはすべてのプロセスに適用されます)。

サンプル時間を試して、同じVDAにログオンしている他のユーザーに影響を与えない環境に最適な値を決定することをお勧めします。

CPU スパイク保護

注:

  • 以下の設定の「CPU使用率」は、物理マシンまたは仮想マシンの「論理プロセッサ」に基づきます。CPU 内の各コアは、Windows と同じように論理プロセッサと見なされます。たとえば、1 つの 6 コア CPU を搭載した物理マシンは、12 個の論理プロセッサを搭載していると見なされます (ハイパースレッディング・テクノロジーは、コアが 2 倍になることを意味します)。8 x CPU を搭載し、それぞれ 12 個のコアを持つ物理マシンには 96 個の論理プロセッサがあります。2 つの 4 コア CPU で構成された VM には、8 つの論理プロセッサがあります。
  • 同じことが仮想マシンにも当てはまります。たとえば、8個のCPUを搭載した物理マシンがあり、それぞれ12個のコア(96個の論理プロセッサ)を搭載し、4つのマルチセッションOS VDA VMをサポートしているとします。各 VM は、2 つの 4 コア CPU (8 つの論理プロセッサ) で構成されます。VM で CPU スパイク保護をトリガーするプロセスを制限するには、そのコアの半分を使用するには、[ CPU コア使用率の制限] を 48 (物理マシンの論理プロセッサの半分) ではなく、4 (VM の論理プロセッサの半分) に設定します。

CPU スパイク保護を有効にします。一定時間([idle priority time] フィールドで指定)の CPU 使用率が指定された割合を超えた場合、一定時間([limit sample time] フィールドで指定)プロセスの CPU プライオリティを下げます。

  • CPU スパイクを自動防止。CPU に過負荷がかかっているプロセスの CPU 優先順位を自動的に下げるには、このオプションを使用します。このオプションは、論理プロセッサ (CPU コア) の数に基づいて、CPU スパイク保護をトリガーするしきい値を自動的に計算します。たとえば、コアが 4 つあるとします。このオプションを有効にすると、全体の CPU 使用率が 23% を超えると、CPU リソース全体の 15% 以上を消費するプロセスの CPU 優先順位が自動的に低下します。同様に、8 コアの場合、全体的な CPU 使用率が 11% を超えると、CPU リソースの 8% 以上を消費するプロセスの CPU 優先順位が自動的に低下します。

  • CPUスパイク保護をカスタマイズします。CPU スパイク保護の設定をカスタマイズできます。

    • CPU 使用率の制限。プロセスインスタンスが CPU スパイク保護をトリガーするために到達する必要がある CPU 使用率の割合。この制限は、サーバー内のすべての論理プロセッサにわたってグローバルであり、インスタンスごとに決定されます。同じプロセスの複数のインスタンスでは、CPU スパイク保護トリガーを決定するときに、CPU 使用率の割合は追加されません。プロセスインスタンスがこの制限に達しない場合、CPU スパイク保護はトリガーされません。たとえば、サーバーVDAで、複数の同時セッションで、多くのiexplore.exeインスタンスがあるとします。各インスタンスは、一定期間約 35% の CPU 使用率でピークに達するため、iexplore.exe は累積的に CPU 使用率の高い割合を消費しています。ただし、CPU 使用率制限を 35% 以下に設定しない限り、CPU スパイク保護はトリガーされません。
    • [ サンプル時間を制限]: プロセスが CPU の優先順位を下げる前に、CPU 使用率の制限を超えなければならない時間。
    • アイドルプライオリティ時間。プロセスの優先度が低下する時間。この時間が経過すると、プロセスの CPU 優先順位は元のレベルに戻ります。

CPU コア使用制限を有効にします。CPU スパイク保護をトリガーするプロセスを、マシン内の指定された数の論理プロセッサに制限します。有効にすると、分離されたプロセスの最大消費量が X パーセントに制限されます。X = 100 x (指定されたコア数/コアの総数)。

  • CPU コア使用量を制限します。CPU スパイク保護をトリガーするプロセスが制限される論理プロセッサの数を指定します。VM の場合、入力する値によって、プロセスは基盤となる物理ハードウェアではなく、VM 内の論理プロセッサ数に制限されます。

インテリジェントな CPU 最適化を有効にします。有効にすると、エージェントは CPU スパイク保護をトリガーするプロセスの CPU 優先順位をインテリジェントに最適化します。CPU スパイク保護を繰り返しトリガーするプロセスは、起動時に正しく動作するプロセスよりも徐々に低い CPU 優先度が割り当てられます。

インテリジェントI/O最適化を有効にします。有効にすると、エージェントは CPU スパイク保護をトリガーするプロセスのプロセス I/O 優先順位をインテリジェントに最適化します。CPU スパイク保護を繰り返しトリガーするプロセスは、起動時に正常に動作するプロセスよりも低い I/O 優先度が割り当てられます。

指定したプロセスを除外します。デフォルトでは、WEM CPU 管理では、最も一般的な Citrix および Windows のコアサービスプロセスがすべて除外されます。ただし、このオプションを使用すると、実行可能ファイル名による CPU スパイク保護の除外リストからプロセスを 追加または削除 できます (notepad.exe など)。通常、ウイルス対策プロセスは除外されます。

ヒント:

  • セッションでディスク I/O を引き継ぐアンチウイルススキャンを停止するには、アンチウイルスプロセスの [静的 I/O 優先度] を [低] に設定することもできますI/O管理。を参照してください。
  • プロセスが CPU スパイク保護をトリガーし、プロセスの CPU 優先順位を下げると、WEM はプロセスの CPU 優先順位を下げるたびに警告を記録します。イベントログの [アプリケーションとサービスログ] の [Norskale Agent Service] で、[プロセスのプロセス制限スレッドの初期化] を探します。

CPU プライオリティ

これらの設定は、プロセスがリソースと競合している場合に有効になります。これにより、特定のプロセスの CPU 優先度レベルを最適化し、CPU プロセッサ時間を競合しているプロセスがパフォーマンスのボトルネックを引き起こさないようにすることができます。プロセスが互いに競合する場合、優先順位の低いプロセスは、優先順位の高い他のプロセスの後に提供されます。したがって、CPU全体の消費量のこのような大きなシェアを消費する可能性は低くなります。

ここで設定したプロセス優先度によって、プロセス内のすべてのスレッドの「基本優先度」が確立されます。スレッドの実際の「現在の」優先順位は高くなる可能性があります(ただし、ベースよりも低くなることはありません)。コンピューター上で多数のプロセスが実行されている場合、CPU の優先度レベルに基づいて、それらのプロセス間でプロセッサ時間が共有されます。プロセスの CPU 優先度レベルが高いほど、プロセッサ時間が割り当てられます。

注:

特定のプロセスで CPU 優先度を低く設定した場合、CPU 全体消費量は必ずしも減少しません。CPU 使用率のパーセンテージに影響する他のプロセス(CPU プライオリティが高い)が存在する可能性があります。

プロセスの優先度を有効にします。選択すると、プロセスの CPU 優先順位を手動で設定できます。

CPU 優先度プロセスリストにプロセスを追加するには

  1. [ 追加 ] をクリックし、[ プロセスの CPU 優先度の追加 ] ダイアログボックスに詳細を入力します。
  2. [ OK] をクリックしてダイアログボックスを閉じます。
  3. [ 適用 ] をクリックして設定を適用します。ここで設定したプロセスCPUの優先順位は、エージェントが新しい設定を受け取り、プロセスを再起動したときに有効になります。

    プロセス名。拡張子なしのプロセス実行可能ファイル名。たとえば、エクスプローラ (エクスプローラ) の場合は、「エクスプローラ」と入力します。

    CPU プライオリティ。プロセス内のすべてのスレッドの「ベース」優先順位。プロセスの優先度レベルが高いほど、プロセッサ時間が長くなります。[リアルタイム]、[高]、[法線の上]、[法線の下]、[低] から選択します。

プロセス I/O 優先度項目を編集するには

プロセス名を選択し、「 編集」をクリックします。

I/O 優先度リストからプロセスを削除するには

プロセス名を選択し、「 削除」をクリックします。

CPU アフィニティ

プロセスのアフィニティを有効にします。有効にすると、プロセスが使用する「論理プロセッサ」の数を定義できます。たとえば、VDAで起動するメモ帳のすべてのインスタンスを、定義されたコアの数に制限できます。

CPUクランプ

CPU クランプは、CPU の処理能力の指定した割合を超えるプロセスが使用されるのを防ぎます。WEM「スロットル」(または「クランプ」) それはあなたが設定した指定されたCPUの割合に達すると、そのプロセス. これにより、プロセスが大量の CPU を消費するのを防ぐことができます。

注:

  • CPUクランプは、計算的に高価なブルートフォースアプローチです。面倒なプロセスの CPU 使用率を人為的に低く保つには、CPU スパイク保護を使用し、そのようなプロセスに静的な CPU 優先順位と CPU アフィニティを割り当てると同時に CPU スパイク保護を使用する方がよいでしょう。CPUクランプは、リソース管理で悪く悪くても優先順位が下がることができないプロセスを制御するために最もよく予約されています。
  • CPUの処理能力の割合をプロセスに適用し、後で同じプロセスに対して異なる割合を構成した後、「 エージェント・ホスト設定の更新 」を選択して変更を有効にします。

設定したクランプ率は、サーバに含まれる個々のコアではなく、サーバ内の個々の CPU の合計電力に適用されます。(言い換えれば、クアッドコアCPUの10%はCPU全体の10%であり、1つのコアの 10%ではありません)。

プロセスクランプを有効にします。プロセスクランプを有効にします。

[ 追加]: 実行可能ファイル名(たとえば、notepad.exe)でプロセスを追加します。

[ 除去]: 強調表示されたプロセスをクランプリストから除去します。

[ 編集]: 特定のプロセスに入力された値を編集します。

ヒント:

  • WEM は、プロセスをクランプするとき、WEM クライアントが初期化するウォッチリストにプロセスを追加します。プロセスがクランプされていることを確認するには、これを表示します。
  • また、CPU クランプが機能していることを確認するには、プロセスモニタを見て、CPU 消費量がクランプ率を上回らないことを確認します。