Legen Sie die Standardprozessoraffinität für alle Anwendungen fest

4602
Novicode

Ich versuche, die CPU-Leistung in einem Spiel zu verbessern. Dazu möchte ich versuchen, 2-4 CPU-Kerne zu verwenden, die NUR diese Anwendung ausführen, und keine Windows-bezogenen Dienste. Gibt es einen Ort, an dem ich die Standardaffinität für ALLE Anwendungen, Dienste, Prozesse usw. einstellen kann. auf dem Computer ist der Kern also überhaupt nicht in Gebrauch?

4

3 Antworten auf die Frage

2
Keltari

Dies kann teilweise mit viel Handarbeit erreicht werden. Sie können die Prozessoraffinität über den Task-Manager oder über die Befehlszeile festlegen. In diesem Artikel erfahren Sie, wie es geht. Leider funktioniert diese Methode nicht für Dienste.

Ich glaube jedoch nicht, dass dies Ihnen sehr helfen wird. Während eines Spiels ist das Betriebssystem nicht viel CPU-fähig. Dies setzt natürlich voraus, dass Ihr Arent nicht gleichzeitig eine andere Aufgabe erledigt, aber Sie würden es nicht tun, da Sie sich über die Leistung beschweren. Sind alle Ihre Kerne im Spiel zu 100% ausgeschöpft? Ich würde es bezweifeln. Ihr Leistungsverlust ist höchstwahrscheinlich nicht an die CPU gebunden, sondern an etwas anderes wie Grafiken und / oder Festplatten. Sie müssen einen Leistungsmonitor (wie Windows Perfmon) ausführen, um wirklich zu sehen, was Sie langsamer macht.

2
deemon

in Powershell:

$instances = Get-Process foreach ($i in $instances) { $i.ProcessorAffinity=1 } 

bewirkt, dass die meisten Prozesse auf dem ersten Kern (Kern 0 im Task-Manager) ausgeführt werden. Ja, es werden ziemlich viele "Zugriff verweigert" Fehler für Prozesse ausgelöst, für die die Affinität nicht geändert werden kann. ignoriere es einfach ... für den Rest funktioniert es.

und dann manuell oder mit Befehl stellen Sie Ihr Spiel auf die gewünschten Kerne ein:

(Get-Process -name doom).ProcessorAffinity = 14 

um Ihr "Doom" -Spiel auf die verbleibenden 3 Kerne auf der 4-Kern-CPU einzustellen.

1
wottis

Einige andere Methoden, um Windows dazu zu zwingen, Anwendungen nur auf einem Kern auszuführen, werden hier beantwortet . Das könnte deine anderen drei Kerne für dein Spiel freigeben. Und wie man die Affinität manuell über taskmgr oder cmdline einstellen kann, hat Keltari mit weiteren nützlichen Hinweisen zu Performance-Engpässen beantwortet.