Gibt es eine Möglichkeit, Windows 10 zu "hacken", um die gesamte CPU-Leistung in einer Task oder einem Prozess zu verwenden?

2072
Ignorante

Ich arbeite mit Anwendungen wie Blender und gemäß "Task-Manager" und "Ressourcenmonitor" verwendet Windows weniger als 40% CPU (höchstens bei der Option unten) und weniger als 30% Speicher, wenn ich ein Video rendere. Ich wäre nicht daran interessiert, den Rest der Ressourcen für andere Zwecke beim Rendern zu verwenden. Gibt es eine Möglichkeit, Windows anzuweisen, seine gesamte Leistungsfähigkeit zu nutzen?

Ich habe versucht , die Priorität zu ändern, es wird sich nicht merklich verbessern.

Ich habe versucht , die Affinität zu einer (Kern-) CPU zu ändern, sie hat sich jedoch verbessert (verdoppelte Rendergeschwindigkeit). Kennt jemand einen anderen "Hack"?

2
Haben Sie versucht, die Einstellungen im Rechtsklick auf das PC-Symbol> Eigenschaften> Erweiterte Systemeinstellungen> Erweitert> Erweitert zu ändern: Von Hintergrunddiensten zu Programmen wechseln? Botmaster vor 9 Jahren 0
Das war die Standardeinstellung :) Ignorante vor 9 Jahren 0
Es ist hier unklar, ob Sie 2 physische CPU oder eine Multi-Core-CPU verwenden. Oder worüber redete die Hardware? Ich kann Beispiele für die Verwendung von Taskmanager-Core zeigen, die sehr verwirrend Informationen anzeigen, die es durch Hyperthreading falsch aussehen lassen (IMO, es ist falsch). Die tatsächliche Geschwindigkeit, mit der Sie ankommen, das zählt :-) Die Antwort deckt es immer noch gut ab, wenn ich es wäre / O trotzdem. Ich möchte nur wissen, ob Sie mehr als eine physische CPU haben. Psycogeek vor 9 Jahren 0
Es ist nur ein Multi-Core. 4 kerne. Ignorante vor 9 Jahren 1
Wenn durch die Beschränkung des Prozesses auf einen Kern der Prozess schneller ausgeführt wird, liegt das Problem wahrscheinlich bei der E / A-Beschränkung bei einer rotierenden Festplatte. David Schwartz vor 8 Jahren 0

2 Antworten auf die Frage

8
Jamie Hanrahan

Nein. Windows schränkt Ihre Anwendungen nicht ein

Wenn Ihre Rendering-App nur aus einem einzigen Thread besteht, kann sie nur 100% einer CPU verwenden. Auf einer Zwei-CPU-Maschine würde dies beispielsweise 50% betragen. Windows kann nicht beide CPUs verwenden, da es Aufgabe des Anwendungsentwicklers ist, die Aufgabe in mehrere Threads aufzuteilen.

Aber manchmal muss es warten, während es das Eingabevideo liest und das Ausgabevideo schreibt ... was nur 40% ausmachen würde.

Für RAM ist es ähnlich. Angenommen, Ihr Computer hat keinen RAM-Mangel, Windows lässt einen Prozess so viel RAM verwenden, wie kürzlich angegeben wurde.

Um den rechnergebundenen Teil des Video-Rendering zu beschleunigen, können Sie eine schnellere CPU oder eine Grafikkarte kaufen, die Ihre App zur Beschleunigung verwenden kann, indem Sie einen Teil der Arbeit in der GPU ausführen. Oder holen Sie sich eine andere Rendering-App mit besser implementiertem Multithreading.

Um die E / A zu beschleunigen, legen Sie die Eingabe-, Ausgabe- und temporären Dateien auf drei verschiedenen Laufwerken ab (nicht nur auf Laufwerksbuchstaben. Unterschiedliche physische Laufwerke). Da die Eingabedateien normalerweise die größten sind und auf die Sie normalerweise zugreifen, wenn Sie mehrere Eingänge kombinieren, legen Sie sie auf Ihrem schnellsten Laufwerk ab, möglichst einer SSD. Die Geschwindigkeit des Ausgangslaufwerks spielt keine große Rolle: Die Geschwindigkeit, mit der Sie ein Video rendern können, ist ein langsamer Spaziergang zu jeder Festplatte.

Das ist eine wirklich vollständige und kristallklare Erklärung. Der letzte Absatz ist reines Gold, vielen Dank! Ignorante vor 9 Jahren 0
Sichere Sache. Beachten Sie, dass in dem obigen Beispiel mit aufgesetzten Zahlen selbst dann, wenn Sie die E / A-Zeit auf nichts reduzieren, ein rechnergebundener Thread nicht mehr als 100% einer CPU verwenden kann. In dem oben aufgeführten Beispiel würden wir nicht erwarten, dass die CPU-Auslastung über 50% liegt. Jamie Hanrahan vor 9 Jahren 0
Verwandte Themen: http://superuser.com/a/964389/348119 Jamie Hanrahan vor 9 Jahren 0
1
user1509130

Wie Jamie bereits sagte, kann eine Single-Threaded-Anwendung nur bis zu 100% eines einzelnen CPU-Kerns verwenden, und zwar nicht mehr als 25% einer Quad-Core-CPU oder 50% einer Dual-Core-CPU.

Sie haben Blender speziell als eines der von Ihnen verwendeten Programme erwähnt. Blender ist beim Rendern einer 3D-Szene in hohem Maße Multithreading. Im Renderpanel unter Performance können Sie die Anzahl der verwendeten Threads erhöhen. Standardmäßig verwendet er dieselbe Anzahl von Threads wie Kerne, die in Ihrem Computer vorhanden sind. Dies ist normalerweise die beste. Ich ändere dies nur, wenn ich meinen Computer während des Renderns für andere Dinge verwenden muss, was tatsächlich zu dem Zustand führt, nach dem Sie fragen.

Wenn Sie eine Serie von Bildern zu einem Video rendern oder ein Video mit Blender zusammensetzen, kann es zu E / A-Engpässen kommen, da das Laufwerk bei Bedarf auf jede einzelne Datei zugreifen muss.