Windows で特定の CPU コアをアプリケーションに割り当てる方法

Windows で特定の CPU コアをアプリケーションに割り当てる方法
マザーボード上の AMD Ryzen CPU の拡大図

最近の PC には複数のCPU コアが搭載されており、ほとんどの場合、Windows はどの CPU コアがどのジョブを実行するかを完璧に選択します。ただし、プロセッサの「アフィニティ」の設定と呼ばれる、特定の CPU コアをアプリに割り当てると、パフォーマンスを向上させ、特定の問題を解決できます。

プロセッサ アフィニティを設定する理由は何ですか?

Windows でプロセッサ アフィニティを設定する一般的な理由としては、次のようなものがあります。

  • パフォーマンスを向上するには: プロセスのプロセッサ アフィニティを設定すると、プロセスが特定の CPU コアでのみ実行されるようになり、パフォーマンスの向上に役立ちます。たとえば、プロセスが特定のコアに大きく依存している場合、プロセッサ アフィニティをそのコアに設定すると、より効率的に実行できるようになります。
  • 競合を回避するには: 場合によっては、プロセスのプロセッサ アフィニティを設定すると、システム上で実行されている他のプロセスとの競合を回避できます。たとえば、2 つのプロセスが同じコアを使用しようとしている場合、プロセスの 1 つにプロセッサ アフィニティを設定すると、競合を回避し、システム全体のパフォーマンスを向上させることができます。
  • 問題をトラブルシューティングするには: プロセスのプロセッサ アフィニティを設定すると、CPU 使用率やパフォーマンスに関連する問題のトラブルシューティングに役立つ場合があります。プロセスを特定のコアに分離することで、プロセスがシステムにどのような影響を与えるかをより深く理解し、潜在的な問題を特定できます。
CPU ピンと接点の拡大図
出典:アンスプラッシュ

Alder Lake モデル以降の Intel の新しいハイブリッド アーキテクチャ CPU のいずれかを使用している場合は、手動プロセッサ アフィニティを使用して、アプリが正しい種類のコアで実行されるようにすることをお勧めします。特に Windows 10 ユーザーは、CPU スケジューラが高いパフォーマンスを必要とするアプリを E コア (効率コア) に割り当て、要求の低いアプリを P コア (パフォーマンス コア) に割り当てることに気づくかもしれません。

システムで最新バージョンの Windows 10 または Windows 11 の任意のバージョンが実行されている場合、問題が発生する可能性はほとんどありません。ただし、一部のアプリケーション、特に古いアプリケーションは、デスクトップ CPU アーキテクチャへのこの新しいアプローチでは期待どおりに機能しない可能性があります。

Windows でプロセッサ アフィニティを設定する方法

Windows でプロセッサ アフィニティを設定するには、次の手順に従います。

Ctrl++Shiftを押してタスク マネージャーを開きますEsc[詳細]タブをクリックして、実行中のプロセスのリストを表示します。

タスクマネージャーのプロセスリスト

プロセッサ アフィニティを設定するプロセスを右クリックし、コンテキスト メニューから[アフィニティの設定]を選択します。

タスクマネージャーでプロセスのアフィニティを設定する

表示されるポップアップで、プロセスを実行するプロセッサの横にあるチェックボックスを選択します。

タスク マネージャーでプロセッサ アフィニティを選択する

「OK」をクリックして変更を保存し、ウィンドウを閉じます。

Windows でプロセスの優先順位を設定する方法

さらに、Windows でプロセスの優先順位を設定して、システムが CPU リソースを他のプロセスよりも特定のプロセスに強制的に割り当てる場合は、次の手順に従ってください。

Ctrl+ Shift+を押してタスク マネージャーを開きEsc[詳細]タブをクリックして実行中のプロセスのリストを表示します。優先度を設定するプロセスを右クリックし、コンテキスト メニューから[優先度の設定]を選択します。

タスクマネージャーでプロセスの優先度を設定する

ドロップダウン メニューから目的の優先レベルを選択し、[OK]をクリックして変更を保存します。

利用可能な優先レベルは次のとおりです。

  • リアルタイム: プロセスには最高の優先順位が与えられ、最も多くの CPU 時間が使用されます。
  • High : プロセスには高い優先順位が与えられ、大量の CPU 時間が割り当てられます。
  • 通常以上: プロセスには通常よりも高い優先順位が与えられ、通常のプロセスよりも多くの CPU 時間が割り当てられます。
  • Normal : プロセスに優先順位が付けられ、標準の CPU 時間が割り当てられます。
  • 通常以下: プロセスには通常よりも低い優先順位が与えられ、通常のプロセスよりも少ない CPU 時間が割り当てられます。
  • Low : プロセスには低い優先順位が与えられ、最小限の CPU 時間が割り当てられます。

プロセッサーのアフィニティに注意が必要な場合

プロセッサ アフィニティを手動で割り当てると、いくつかのリスクが生じる可能性があります。これらの潜在的なリスクには次のようなものがあります。

ノートパソコンの前に座る女性
出典:アンスプラッシュ
  • パフォーマンスの低下: プロセスのプロセッサ アフィニティを誤って設定すると、パフォーマンスが低下する可能性があります。たとえば、ワークロードを処理できない CPU コアにプロセスを割り当てると、プロセスの実行が遅くなったり、応答しなくなったりする可能性があります。
  • システムの不安定性: プロセスのプロセッサ アフィニティを設定すると、システム全体のパフォーマンスと安定性に影響を与える可能性があります。すでに使用率が高いコアにプロセスを割り当てると、システムが不安定になったり、クラッシュしたりする可能性があります。
  • 柔軟性の低下: プロセッサ アフィニティを手動で割り当てると、システムの柔軟性が制限される可能性があります。たとえば、プロセスにプロセッサ アフィニティを設定すると、他のコアが使用可能になった場合でも、そのプロセスは割り当てられたコアでのみ実行できます。これにより、変化するワークロードに適応したり、システム障害に対応したりすることが困難になる可能性があります。
  • セキュリティの脆弱性: 場合によっては、プロセッサ アフィニティを手動で割り当てると、セキュリティの脆弱性が生じる可能性があります。たとえば、悪意のあるプロセスに対してプロセッサ アフィニティを設定すると、セキュリティ ソフトウェアが脅威を検出または軽減できなくなる可能性があります。

全体として、プロセッサ アフィニティを手動で割り当てることは、システムのパフォーマンスを最適化するための便利なツールとなります。それでも、慎重に使用し、潜在的なリスクを明確に理解することが重要です。

よくある質問

Windows のプロセッサ アフィニティとは何ですか?

Windows の CPU (プロセッサ アフィニティ) 設定を使用すると、プロセスを CPU 上の特定の物理コアにバインドして、その特定のコアでのみ実行できるようにすることができます。これは、特に要求の厳しいプロセスに CPU の最高パフォーマンスのコアを利用したり、アプリケーションの CPU 使用率を制限したり、複数のコアのパフォーマンスに影響を与える問題を診断したりするのに役立ちます。

WindowsのCPU優先度とは何ですか?

Windows の CPU 優先順位は、任意の時点で CPU に送信されるさまざまなタスクや要求に優先順位を付けるために使用されるスケジューリング システムです。 Windows は、どのプロセスが他のプロセスよりも重要であるかを判断し、他のプロセスよりも優先的に CPU リソースをそれらのプロセスに割り当てることができます。

Windows のすべての CPU コアを 1 つのアプリに割り当てることはできますか?

はい、利用可能なすべてのコアを含むようにアプリのプロセッサ アフィニティを設定することで、Windows のすべての CPU コアをアプリに割り当てることができます。ただし、すべての CPU コアをアプリに割り当てると、システムのパフォーマンスと安定性に影響を与える可能性があります。

コア アフィニティの割り当てから最もメリットが得られるのはどのアプリですか?

Adobe Premiere Pro、Blender、Maya、3ds Max、MATLAB COMSOL、ANSYS、DaVinci Resolve などのアプリは CPU の使用量が非常に多いため、特定の CPU コアに割り当てることでメリットが得られる場合があります。

アフィニティはいつリセットされますか?

手動で割り当てられたプロセッサ アフィニティは、自動的にはリセットされません。プロセスのプロセッサ アフィニティを設定すると、変更するかプロセスが終了するまで、選択したプロセッサに割り当てられたままになります。
ただし、状況によっては、プロセスのプロセッサ アフィニティがリセットされることがあります。たとえば、コンピュータを再起動するか、プロセスが終了して再起動されると、プロセスのプロセッサ アフィニティはデフォルト値にリセットされます。

画像クレジット: Unsplash。すべてのスクリーンショットは Tanveer Singh によるものです。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です