Ändern der Affinität des Prozesses mit dem Windows-Skript

8

In Windows mit

%Vor%

Ich kann die Affinität von app.exe (Anzahl der von app.exe verwendeten Kerne) festlegen.

Mit einem Windows-Skript, Wie kann ich die Affinität eines laufenden Prozesses ändern?

    
JuanPablo 04.10.2013, 17:23
quelle

4 Antworten

12

PowerShell kann diese Aufgabe für Sie übernehmen

Bekommen Affinität:

%Vor%

Affinität einstellen:

%Vor%

Beispiel: (8 Core Prozessor)

  • Kern # = Wert = BitMask
  • Kern 1 = 1 = 00000001
  • Kern 2 = 2 = 00000010
  • Kern 3 = 4 = 00000100
  • Kern 4 = 8 = 00001000
  • Kern 5 = 16 = 00010000
  • Kern 6 = 32 = 00100000
  • Kern 7 = 64 = 01000000
  • Kern 8 = 128 = 10000000

Fügen Sie einfach die Dezimalwerte für den Kern hinzu, den Sie verwenden möchten. 255 = Alle 8 Kerne.

  • Alle Kerne = 255 = 11111111

Beispielausgabe:

%Vor%

Quelle:

Hier ist ein schön detaillierter Beitrag, wie man die Affinität eines Prozesses ändert: Ссылка

    
David Ruhmann 04.10.2013, 20:48
quelle
3

Die angenommene Antwort funktioniert, aber nur für den ersten Prozess in der Liste. Die Lösung dazu in den Kommentaren funktioniert bei mir nicht.

Um die Affinität aller Prozesse mit demselben Namen zu ändern, verwenden Sie Folgendes:

%Vor%

Dabei ist 255 die in der akzeptierten Antwort angegebene Maske. (Kann noch nicht kommentieren, also neue Antwort, Entschuldigung)

    
skjerns 29.01.2017 16:10
quelle
2

Für alle anderen, die nach Antworten suchen und keine finden, habe ich eine App namens WinAFC gefunden (oder AffinityChanger). Dies ist eine partielle GUI, eine teilweise Befehlszeilen-App, mit der Sie Profile für bestimmte ausführbare Dateien angeben können, und fragt die Prozessliste nach ihnen ab. Wenn übereinstimmende Prozesse gefunden werden, ändert sich die Affinität dieser Prozesse entsprechend den Einstellungen im geladenen Profil.

Es gibt einige Dokumente hier: Ссылка

Für meine Zwecke habe ich ein Profil erstellt, das folgendermaßen aussieht:

%Vor%

Dieses Profil setzt jeden convert.exe-Prozess auf die Verwendung der ersten zwei CPU-Kernpaare (CPU0, CPU1, CPU2 und CPU3), die jede Sekunde abfragen. TestMode ist ein Schalter, mit dem Sie sehen können, ob Ihr Profil funktioniert, ohne dass tatsächlich Affinitäten gesetzt werden.

Hoffe jemand findet das nützlich!

    
Jake 05.10.2016 22:55
quelle
1
%Vor%

Ich denke das sind die Prioritätsstufen .Sie kann auch PID anstelle des Prozessnamens verwenden.

    
npocmaka 04.10.2013 19:51
quelle

Tags und Links