Zum Inhalt springen
IGNORIERT

Gleiche Lastverteilung der CPU Kerne erzielen


AstroSam

Empfohlene Beiträge

Hi, habe das gerade in einem anderen Forum gefunden und empfinde es als sehr nützlich. Wenn ihr das schon kennt, dann löscht meinen Eintrag gerne wieder.

 

Also, wenn ihr eine multi-core CPU besitzt, schaltet mal den Task Manager -> Ressourcenmonitor ein und beobachtet die Auslastung der einzelnen CPU-Kerne während Star Citizen läuft. Interessanterweise ist es so, dass immer nur ein CPU Kern zu 100% ausgelastet ist (bei meinem Ocatcore ist es Kern #02), während die anderen bei 50, 60% vor sich hindümpeln. Man kann erreichen, dass alle Kerne gleichmäßig genutzt werden, und zwar folgendermaßen:

 


Step #01:
- notepad öffnen
- folgende Zeilen hineinkopieren:

$Process = Get-Process StarCitizen
$Process.ProcessorAffinity = 251
$Process.ProcessorAffinity = 255

 

- speichern als StarAffinity.ps1 in euer Cloud Imperium Games directory (z.B. C:\Program Files\Cloud Imperium Games)


Step #02:
- notepad (neue Datei oder nochmal neu öffnen)
- folgende Zeile hineinkopieren

powershell.exe -ExecutionPolicy Bypass -file StarAffinity.ps1

- speichern im selben Verzeichnis wie oben als start_sc.bat


Step #03:
- cmd.exe als Administrator ausführen (windows Taste, "cmd" tippen, auf Suchergebnis mit rechter Maustaste klicken, "starten als Administrator" anwählen)
- zum CIG Verzeichnis navigieren (zum Beispiel: cd C:\Program Files\Cloud Imperium Games)

- Star Citizen Launcher starten; login; launch game

- Sobald das Hauptmenü geladen wurde, mit Alt+Tab zum CMD-Fenster zurück
- start_sc.bat tippen und Enter drücken

 

 

Das hilft sicherlich nicht der fps Zahl (wobei: vielleicht bei "schwächeren" Rechnern, das weiß ich nicht). Allerdings ist es bei mir so, dass die CPU deutlich(!) weniger zu tun hat, weil nun alle Kerne gleichmäßig ausgelastet sind, womit der Lüfter nicht so hoch dreht und das Temperaturniveau sinkt.

 

Probiert es doch gerne mal aus. Mich würde euer Feedback interessieren.

 

Lieben Gruß und viel Erfolg,

Sam :)

Bearbeitet von AstroSam
Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich mach das schon ewig mit dem Taskmanager. Game starten - Taskmanager öffnen und Prozess starcitizen.exe suchen - rechte Maustaste Zugehörigkeit CPU 0 Häckchen weg und ok. Jetzt nochmal und alle Kerne wieder aktivieren. Weis auch nicht warum man sich mit solchen Sachen rumschlagen muss. Hatte ich bei keinem anderen Spiel bisher.

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 9 Stunden schrieb Vicblau:

 

Nein, da hat das eine mit dem anderen nichts zu tun. Das Thema "nicht genutzte Cores parken" war mal aktuell unter Windows 7 um bei multicore CPUs Energie zu sparen. Vom Grundsatz her war/ist das auch eine tolle Idee - nur dass das Wiederanlaufen, soweit ich mich erinnere, auf Intel-CPUs optimiert war und bei AMDs dieser Prozess zu Verzögerungen oder sogar Performanceeinbußen führte. Ich kann mich da noch gut dran erinnern weil ich einen 8350 besitze. Die unparking Tweaks unter Win7 brachten da tatsächlich Wunder auf meinem System. Unter Windows 10 ist das aber Geschichte, ein Eingreifen also nicht mehr notwendig.

 

Bei meinem geposteten Thema oben geht es darum, das Star Citizen ZUR ZEIT (es ist halt noch nicht optimiert) insbesondere Kern #02 unter Volllast stellt. Das ist grundsätzlich nicht schädlich. Bei mir bringt der kleine "Kniff", der für gleichmäßige Verteilung sorgt, aber mehr Ruhe ins System (wie ich übrigens auch eingangs schrieb ;) ). fps-Zahlen erhöht es bei mir nicht (8350, 16GB, GTX1060).

Von einem anderen User allerdings, der mit einem etwas schwachbrüstigen Laptop spielt, habe ich auch von Performancezuwächsen gelesen.

 

Probiert es doch mal aus und schreibt eure Erfahrungen :)

Bearbeitet von AstroSam
Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 4 Stunden schrieb AstroSam:

 

Nein, da hat das eine mit dem anderen nichts zu tun. Das Thema "nicht genutzte Cores parken" war mal aktuell unter Windows 7 um bei multicore CPUs Energie zu sparen. Vom Grundsatz her war/ist das auch eine tolle Idee - nur dass das Wiederanlaufen, soweit ich mich erinnere, auf Intel-CPUs optimiert war und bei AMDs dieser Prozess zu Verzögerungen oder sogar Performanceeinbußen führte. Ich kann mich da noch gut dran erinnern weil ich einen 8350 besitze. Die unparking Tweaks unter Win7 brachten da tatsächlich Wunder auf meinem System. Unter Windows 10 ist das aber Geschichte, ein Eingreifen also nicht mehr notwendig.

 

Bei meinem geposteten Thema oben geht es darum, das Star Citizen ZUR ZEIT (es ist halt noch nicht optimiert) insbesondere Kern #02 unter Volllast stellt. Das ist grundsätzlich nicht schädlich. Bei mir bringt der kleine "Kniff", der für gleichmäßige Verteilung sorgt, aber mehr Ruhe ins System (wie ich übrigens auch eingangs schrieb ;) ). fps-Zahlen erhöht es bei mir nicht (8350, 16GB, GTX1060).

Von einem anderen User allerdings, der mit einem etwas schwachbrüstigen Laptop spielt, habe ich auch von Performancezuwächsen gelesen.

 

Probiert es doch mal aus und schreibt eure Erfahrungen :)

 

Das ist auch meine Erfahrung. Unter Win 10 ist bei meinem System (QuadCore) eigentlich kein Effekt spürbar, weder mit "UnparkCPU" noch mit dem oben beschriebenen via "start_sc.bat" ausgelösten Prozess.

Hab's mal überprüft mit dem Tool "HWiNFO64". Die CPU-Lastverteilung bei laufendem SC wird hier unter Win10 relativ als gleichmäßig verteilt aufgezeigt.

Bueno, ich bin jetzt weder ein Software- noch ein Hardwarecrack, also falls jemand zu anderen Ergebnissen bei Win10 kommt, bitte posten :geek:

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 34 Minuten schrieb Cid F:

Die CryEngine ist von Haus aus mehrkernoptimiert.

Ok, nochmal direkter: Hat jemand von euch eine 6- oder 8 Kern CPU und hat per Afterburner o.ä. schon ausgelesen, in wie weit SC diese auch gleichmässig ausnutzt?

(Ich frage deshalb, weil mein i5 4590 4-Kerner @3,7 Ghz immer bei 100% Auslastung läuft und ich deswegen über ein Upgrade sinniere)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Also, hier sind mal zwei Screenshots der Core-Auslastung meines AMD 8350. Gemessen habe ich jeweils von dem Start der PU bis Spawn und Betreten des Raumschiffs (Connie).

 

ohne Skript:

avmldw3o.jpg

 

mit Skript:

iwnqcwpe.jpg

 

Für die Daten-Enthusiasten noch die HWinfo csv files anbei.

 

 

Passwort HQ_SC

 

 

 

 

SC.zip

Bearbeitet von AstroSam
Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 49 Minuten schrieb Massive Ghost:

Ok, nochmal direkter: Hat jemand von euch eine 6- oder 8 Kern CPU und hat per Afterburner o.ä. schon ausgelesen, in wie weit SC diese auch gleichmässig ausnutzt?

(Ich frage deshalb, weil mein i5 4590 4-Kerner @3,7 Ghz immer bei 100% Auslastung läuft und ich deswegen über ein Upgrade sinniere)

Ich hab den i7 6700K. Da SC aber alles Andere als optimiert ist, mach da keine Wissenschaft draus mit irgendwelchen Extra-Programmen zum auslesen oder sogar Übertaktungsversuche. Im Taskmanager zeigt mir die CPU eine Auslastung von ca. 30 - 40% an.

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 7 Minuten schrieb Marcel:

Ich hab den i7 6700K. Da SC aber alles Andere als optimiert ist, mach da keine Wissenschaft draus mit irgendwelchen Extra-Programmen zum auslesen oder sogar Übertaktungsversuche. Im Taskmanager zeigt mir die CPU eine Auslastung von ca. 30 - 40% an.

Afterburner hab ich eh immer mitlaufen, wegen der manuell angepassten Lüftersteuerung. Deine CPU hat im Gegensatz zu meiner aber Hyper Threading und 8 statt 4 Threads, dann wird´s wohl daran liegen (ich denke nicht, dass die 0,5Ghz, die deine CPU schneller ist, bei SC den Bock fett machen^^).

Link zu diesem Kommentar
Auf anderen Seiten teilen

Wir haben im Evocati PTU einige Tests zu den fps gemacht und egal welche CPU und GraKa verbaut war, die fps waren die Selben.

Wegen der Hardware muss sich im Moment Keiner den Kopf zerbrechen und wenn die fps bei 4 bis 25 liegen, ist alles ok

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 5 Minuten schrieb Marcel:

Wir haben im Evocati PTU einige Tests zu den fps gemacht und egal welche CPU und GraKa verbaut war, die fps waren die Selben.

Wegen der Hardware muss sich im Moment Keiner den Kopf zerbrechen und wenn die fps bei 4 bis 25 liegen, ist alles ok

Wegen den FPS mache ich mir auch keine Gedanken, wegen der CPU-Auslastung aber schon. Wird ja hoffentlich später noch optimiert, aber jetzt komplett bei 100% zu laufen, wirft mir Sorgenfalten auf die Stirn^^.

Link zu diesem Kommentar
Auf anderen Seiten teilen

@AstroSam - Screenshots

Erstmal Danke für Deine Mühe, Sam :thumbsup:

Hab' mir Deine Screenshots zum Anlass genommen, die Sache nochmal genauer anzuschauen und korrigiere hiermit meine obige Aussage bzgl. des von Dir geposteten Scripts!

Ich bin bei meiner Intel-CPU (i7-2700K QuadCore) nach akkuraterem Vorgehen zu dem gleichen Ergebnis gekommen wie Du  bei Deiner AMD-CPU.

(Ich arbeite mit Benutzerkontosteuerung und hatte bei meinem ersten Testdurchgang heute nachmittag die cmd-Eingabeaufforderung nicht als Admin geöffnet sondern nur mit Doppelklick :wallbash:)

Auch wenn die gleichmäßige CPU-Auslastung bei den FPS anscheinend keine Vorteile bringt, so doch bei der Core-Temparatur. Bei meinem Core immerhin knapp über 10°! Das ist m.E. durchaus eine signifikante Entlastung für's System.

Also, ich werde den Script vorerst weiter nutzen, bis dann SC entsprechend optimiert ist :D

 

LG MicStar

P.s.: "UnparkCPU"  hat bei mir keine Veränderung der CPU-Auslastung bewirkt.

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Am 4.9.2016 um 21:18 schrieb Seebo:

Jemand schon getestet, ehrfahrung InGame ?

Gesendet von iPhone mit Tapatalk

 

vor 10 Stunden schrieb MicStar:

@AstroSam - Screenshots

Erstmal Danke für Deine Mühe, Sam :thumbsup:

Hab' mir Deine Screenshots zum Anlass genommen, die Sache nochmal genauer anzuschauen und korrigiere hiermit meine obige Aussage bzgl. des von Dir geposteten Scripts!

Ich bin bei meiner Intel-CPU (i7-2700K QuadCore) nach akkuraterem Vorgehen zu dem gleichen Ergebnis gekommen wie Du  bei Deiner AMD-CPU.

(Ich arbeite mit Benutzerkontosteuerung und hatte bei meinem ersten Testdurchgang heute nachmittag die cmd-Eingabeaufforderung nicht als Admin geöffnet sondern nur mit Doppelklick :wallbash:)

Auch wenn die gleichmäßige CPU-Auslastung bei den FPS anscheinend keine Vorteile bringt, so doch bei der Core-Temparatur. Bei meinem Core immerhin knapp über 10°! Das ist m.E. durchaus eine signifikante Entlastung für's System.

Also, ich werde den Script vorerst weiter nutzen, bis dann SC entsprechend optimiert ist :D

 

LG MicStar

P.s.: "UnparkCPU"  hat bei mir keine Veränderung der CPU-Auslastung bewirkt.

 

 

Freut mich, dass sich mein eingangs geposteter Eindruck bestätigt. Wie gesagt, fps-seitig kein Einfluss - zumindest bei Rigs, die up-to-date sind - aber temperaturseitig in jedem Fall einen Blick wert, zumindest solange SC noch nicht weiter für Mehrkernnutzung optimiert worden ist.

 

Mich würde noch mal interessieren, wenn hier jemand mit einem älteren System SC spielt - z.B. Quadcore mit ner GTX der 700er Baureihe - ob sich das fps-seitig auswirkt. Vielleicht meldet sich ja noch mal jemand, der das ausprobieren möchte/könnte, das wäre klasse :)

 

Lieben Dank auf jeden Fall @MicStar für das Nachverfolgen und dein Feedback! :thumbsup:

 

Bearbeitet von AstroSam
Link zu diesem Kommentar
Auf anderen Seiten teilen

Mh, das habe ich mich auch bereits gefragt - da das Skript sich aber kein zweites Mal starten lässt ohne das der Rechner neu gebootet wurde, gehe ich davon aus, das nicht...?

Habe es aber noch nicht explizit nachverfolgt.

 

[edit]bzw. anders formuliert: ja, bei jedem Rechner-Neustart und Start von SC muss Step#03 - also das Skript - manuell gestartet werden.

Bearbeitet von AstroSam
Link zu diesem Kommentar
Auf anderen Seiten teilen

Interessanter Kommentar aus anderem Forum:

 

I've been doing this for quite some time.  I run a 6 core Intel 5820, so I essentially toggle the affinity to the first core (core 0 in task manager) and back to all cores.
In my case the binary to decimal value for 12 core ( 6 + hyperthreading ) is 4095 not 255

 

PowerShell "Get-Process StarCitizen | Select-Object ProcessorAffinity"
PowerShell "$Process = Get-Process StarCitizen; $Process.ProcessorAffinity=1"
PowerShell "$Process = Get-Process StarCitizen; $Process.ProcessorAffinity=4095"

 

Keep in mind  the final $Process.ProcessorAffinity value should match the binary value for all cores ( virtual ).
If for example you use 255 on an Intel 5820 , you would essentially tell SC not to run on 4  of the 12 cores at all, which is probably not what you're after.

Each virtual core you have is a binary column, then just convert to decimal to figure out the value.


Binary  = Decimal

1111 = 15  ( 4 core Intel I5 no hyperthreading)
1111 1111 = 255 ( 4 core I7, 8 virtual cores with hyperthreading)
1111 1111 1111 = 4095 ( 6 core I7,12 virtual cores with hyperthreading)
etc


To get around the permissions issue, I create a shortcut to the batch file, and then set the shortcut to run as administrator.  There is no option for this directly on a batch file.  I start the game, alt tab and just run the shortcut.

 

http://i.imgur.com/aVHQXZ1.png

 

 

Bearbeitet von AstroSam
Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...