Windows 7でいくつかのベンチマークを実行したいと思います。これらのベンチマークは、マルチコアCPUでのハイパースレッディングと関係があります。このため、ベンチマークのみが独自の論理プロセッサで実行されていることを確認したいと思います。プロセスに対して明示的に許可しない限り、特定の論理プロセッサで何もスケジュールしないようにWindowsに指示する方法はありますか?
タスクマネージャで一度に1つのプロセスでこれを手動で行うことは、オプションではありません。これを繰り返し実行できるようにしたいと思います(多くのベンチマークを何度も実行します)。現在実行中のプロセスのアフィニティをプログラムで設定する方法を知っています。
すべてのプロセスにデフォルトのアフィニティを設定できる構成はありますか?
Process Lasso これをサポートします!無料版と有料版が付属しており、CPUアフィニティは常に無料です...
*
フィールドにName match
を入力するだけで、すべてのプロセスが対象になります。
次に、プログラムを追加して別のアフィニティを持たせることができると思います。ルールを入力する順序が重要になる場合があります。また、下部にあるMore strictly enforce default affinities
にチェックマークを付けることもできます。
タスクマネージャーのプロセスに入り、プロセスを右クリックすると、アフィニティを選択できるはずです。
コアを無効にするには、msconfigを使用できます。プロセスごとに有効にできるとは思いません。
これにより、ウィンドウ(およびその他すべて)は指定されたプロセッサの数のみを表示して使用します。したがって、残りの部分は事実上完全に無効になります。使用可能なコアの数を超えて使用することはありません(使用できます)。