Automatisches Verteilen der CPU-Nutzung von Anwendungen zwischen Kernen (Windows 8)

1403
Jodes

Ich habe eine Athlon 8-Core-CPU (4 h / w, 8 logisch) und finde, dass sie selten über 12,5% liegt. Ich habe diesen Artikel gelesen, in dem erklärt wird, warum es gibt und dass es zwei Lösungen gibt:

  1. Festlegen der Prozessoraffinität für Prozesse / Anwendungen
  2. Legen Sie Priorität für Prozesse / Anwendungen fest

Wenn Sie dies für mehr als 20 Anwendungen manuell tun, und wer weiß, wie viele Prozesse wie eine Strategie sind, die zu einer vergangenen Zeit gehört? Ich bin erstaunt, dass dies nicht dynamisch geschieht. Ist es möglich, dass es ein Werkzeug gibt, das das alles automatisch erledigt?

Außerdem funktionieren die beiden oben genannten Techniken (afaik) für Anwendungen wie Google Chrome, die für jeden Browser einen eigenen Prozess verwenden, nicht. Sicherlich könnten diese wie verteilt werden? (Und ich habe es nicht versucht, aber es wäre schön, wenn Flash-Instanzen in / auf separaten Prozessen / Prozessoren und ebenfalls für Java-Anwendungen ausgeführt werden könnten.)

0
Windows verteilt Prozesse automatisch auf verschiedene Kerne. Bei AFAIK ist es nicht nötig, im normalen Gebrauch mit Affinität zu spielen, und das Spielen mit Priorität erscheint dumm, wenn Sie viele Ersatzzyklen haben. Andy vor 10 Jahren 2

1 Antwort auf die Frage

4
Mario

Überlassen Sie es dem Betriebssystem. Es sollte in der Lage sein, die effizienteste CPU-Last / Zuweisung selbst herauszufinden.

Die große Sache hier ist, dass Sie einen einzelnen Thread nicht wirklich über mehrere Kerne verteilen können, selbst wenn dies effizienter wäre. Wenn die Anwendung nicht für Multithreading entwickelt wurde, können Sie nichts unternehmen, um mehr Kerne zu verwenden.

Insgesamt funktioniert der Lastausgleich. Was Sie tun können, ist, etwas parallel laufen zu lassen. Verwenden Sie beispielsweise zwei Instanzen von ffmpeg, um zwei verschiedene Dateien gleichzeitig zu konvertieren. Wenn Sie davon ausgehen, dass Ihre andere Hardware schnell genug ist, sollten beide Prozesse etwa 12,5% CPU und damit insgesamt 25% benötigen.