• Mitspieler gesucht? Du willst dich locker mit der Community austauschen? Schau gerne auf unserem ComputerBase Discord vorbei!

Apex Legends CPU Skalierung

HisN schrieb:
Mit dem 6-Kerner kann man doch wundervoll testen.
Schalte einen Kern ab.
Werden es weniger FPS, dann nutzt das Game 6 Kerne
Bleiben die FPS gleich, dann nutzt es keine 6 Kerne und Du kannst noch einen Kern abschalten.

Klingt logisch, funktioniert so aber nicht so richtig. Wahrscheinlich weil vom Betriebssystem noch einiges genutzt wird. Die beste lösung wäre ein blick auf den Process Explorer, weil der Taskmanager hilft dir da auch nicht weiter.

Beim Process Explorer kannst du die einzelne anwendung auswählen und schauen wieviele Prozent es von deiner CPU auslastet. Danach musst du einfach nur noch Rechnen fertig.

Hier ein Beispiel von Universe Sandbox 2 welches locker 16 Threads beanspruchen kann.

814930


Getestet mit einem Ryzen 7 1700 @ 3,0 GHz
 
LikeAnIrish schrieb:
Ich hab leider nur n 6 Kerner.
Da ich plane aufzurüsten (samt Graka) interessiert mich ob ich die CPU überhaupt mitziehen muss, oder eh nur 6 ausgelastet werden ...
stört dich denn dein aktuelles cpu Limit?

wenn du nicht weißt ob die cpu ausreicht, hast du dich vermutlich gar nicht mit dem cpu limit auseinander gesetzt :)
 
Nureinnickname! schrieb:
Beim Process Explorer kannst du die einzelne anwendung auswählen und schauen wieviele Prozent es von deiner CPU auslastet. Danach musst du einfach nur noch Rechnen fertig.

"Klingt logisch, funktioniert aber nicht so richtig".
Wenn du 10 Kerne hast und das Spiel 84% braucht, könnte es als 4x5% und 16x4% verteilt sein. Laut deiner Rechnung würden 9 Kerne reichen, tatsächlich würden aber 20 Kerne die Leistung potentiell Verdoppeln.

Insofern ist der Vorschlag von HisN schon der einzig korrekt durchgeführte, zumindest um zu testen, ob das Spiel "mindestens" diese Anzahl an Kernen benutzt.
Das schlimmste was passiert: die zusätzlichen Kerne, die dann angeschafft werden, kümmern sich um Windows + andere Programme.
 
Bonanca schrieb:
Wenn du 10 Kerne hast und das Spiel 84% braucht, könnte es als 4x5% und 16x4% verteilt sein. Laut deiner Rechnung würden 9 Kerne reichen, tatsächlich würden aber 20 Kerne die Leistung potentiell Verdoppeln.

Wenn du schon was Zitierst, dann bitte Komplett. Anscheinend hast du meinen Post nicht so richtig verstanden oder? Process Explorer zeigt von dem Jeweiligem Programm die Auslastung in Prozent an, der Einfachheit halber nehmen wir einen 10 Kerner ohne HT

Zeigt das Programm 10% an, wird logischerweise nur 1 Kern genutzt. Bei 20% 2 Kerne.. usw.
Wie kann die Leistung verdoppelt werden wenn bei X Kernen schon das Limit erreicht wurde? Versteh ich grade nicht so wirklich. GTA5 braucht beispielsweise 5 Threads bzw kann maximal 5 auslasten, da ist es egal ob du 100 oder 200 Kerne im CPU hast, dadurch läuft das Spiel auch nicht schneller. Falls dies doch der Fall sein sollte was ich bezweifle, liegt das Offensichtlich an Windows, und deren Hintergrund Programmen
 
  • Gefällt mir
Reaktionen: HisN
Nureinnickname! schrieb:
Wenn du schon was Zitierst, dann bitte Komplett. Anscheinend hast du meinen Post nicht so richtig verstanden oder? Process Explorer zeigt von dem Jeweiligem Programm die Auslastung in Prozent an, der Einfachheit halber nehmen wir einen 10 Kerner ohne HT

Dass du mein Beispiel nicht verstehst heißt nicht, dass du Recht hast oder ich unrecht.



Nureinnickname! schrieb:
Wie kann die Leistung verdoppelt werden wenn bei X Kernen schon das Limit erreicht wurde?

Weil du von vornherein ausschließt, dass die Last der X Kerne weiter aufgeteilt werden kann.
Wenn ein Programm aber potentiell 20 zueinander parallelisierbare "Lasten" hervorruft, die jeweils nicht weiter parallelisierbar sind, du aber nur 10 Kerne hast, müssen diese 20 Lasten auf 10 Kerne aufgeteilt werden.
Wir gehen Mal von 4 Lasten A und 16 Lasten B aus.
2 Lasten A füllen einen Kern zu 100%. Ein Kern kann also mit 2 Lasten A Zu 100% ausgelastet werden.
2 Lasten B füllen einen Kern zu 80%. Ein Kern kann also 2 komplette Lasten B übernehmen und ist damit zu 80% ausgelastet.

Insgesamt füllen unsere Lasten unseren Prozessor zu 84% aus.
Bei 9 Kernen, wie du es vorschlägst, würde unsere Leistung bereits einbrechen, weil ein Kern 3 Lasten B übernehmen müsste, also zu 120% ausgelastet wäre.

Mit 20 Kernen hingegen bekommt jede Last A sowie jede Last B einen einzelnen Kern. Last A muss also nicht mehr doppelt von einem Kern bearbeitet werden, sondern kann einzeln von einem Kern zu 100% bearbeitet werden. Jede Last A kann also doppelt so schnell bearbeitet werden.

Und dennoch würde unsere CPU nur zu 84% ausgelastet sein. Bereits ein Kern weniger führt aber zu Leistungseinbußen
 
Bei meinen Messungen mit Kerne abschalten sieht man übrigens auch, dass der Knackpunkt etwa bei 5 Kernen liegen müsste.

Viele Wege führen nach Rom :-)

Und man sieht auch das "Problem" bei meiner Messung, wenn man schaut wie ich um die letzte Ecke fahre .. da stürzen dann die FPS wundervoll ab^^
Im Multiplayer ist messen nicht so einfach.
 
Bonanca schrieb:
Dass du mein Beispiel nicht verstehst heißt nicht, dass du Recht hast oder ich unrecht.
Weil du von vornherein ausschließt, dass die Last der X Kerne weiter aufgeteilt werden kann.
Wofür hat Intel dann HT erfunden wenns laut dir auch ohne geht? Ist ja dann total schwachsinnig. Entweder stehe ich grad gewaltig auf dem Schlauch, oder du verstehst nicht dass man einen CPU Thread nicht aufteilen kann. Eine CPU mit 1 Kern kann auch nicht 2 oder 100 Sachen gleichzeitig, das mag auf grund der Geschwindigkeit so erscheinen ist aber nicht so. Die CPU muss brav alles nach einander abarbeiten, da führt kein weg dran vorbei, und falls doch, kannst du mit der Idee bestimmt ziemlich viel Geld verdienen.
 
HisN schrieb:
Im Multiplayer ist messen nicht so einfach.
Dann spielst du mit den falschen Freunden (oder Bots) :D

Nureinnickname! schrieb:
Wofür hat Intel dann HT erfunden wenns laut dir auch ohne geht? Ist ja dann total schwachsinnig. Entweder stehe ich grad gewaltig auf dem Schlauch, oder du verstehst nicht dass man einen CPU Thread nicht aufteilen kann. Eine CPU mit 1 Kern kann auch nicht 2 oder 100 Sachen gleichzeitig, das mag auf grund der Geschwindigkeit so erscheinen ist aber nicht so. Die CPU muss brav alles nach einander abarbeiten, da führt kein weg dran vorbei, und falls doch, kannst du mit der Idee bestimmt ziemlich viel Geld verdienen.
Ein moderner CPU Kern macht schon verdammt viele Sachen gleichzeitig. Aber es kommt pro Taktzyklus immer nur ein Ergebnis hinten raus. Aber während so ein Ergebnis berechnet wird, können parallel noch andere Dinge berechnet werden. Wenn deine Instruktion mehrere Taktzyklen braucht und pro Taktzyklus nur bestimme Bereiche der CPU beansprucht, dann können gleichzeitig die nicht-genutzten Bereiche von darauffolgenden Instruktionen verwendet werden.
Ansonsten werden die Pipelines gefüllt, es wird Prefetching betrieben, es werden Instruktionen umsortiert (out of order), etc. pp.. HT ist dort auch einfach nur noch ein weiteres Glied in der Kette. (ja, ich habe Glied geschrieben, ich weiß).

All diese Techniken machen im Grunde dasselbe: Sie stellen sicher, dass die CPU immer ausgelastet ist und arbeitet und so möglichst viele Ergebnisse pro Sekunde produziert.
 
Zuletzt bearbeitet:
Nureinnickname! schrieb:
Eine CPU mit 1 Kern kann auch nicht 2 oder 100 Sachen gleichzeitig

Aber nacheinander.
Oder möchtest du mir jetzt erzählen dass Prä-Multicore Zeiten Windows lief und sonst nix anderes und Programme entweder 100% oder 0% CPU-Last gezogen haben?

Wie werden denn sonst Programme ausgeführt die potentiell mehr Kerne auslasten könnten?
 
Hab ich doch geschrieben, das es nacheinander abgearbeitet werden muss, liest du eig die Posts ? ;-) Du hattest doch behauptet das die Lasten selbst bei einer CPU mit 1 Kern/ Thread aufgeteilt werden, und das gelinde gesagt quatsch.

Jetzt versteh ich auch was du meinst. Die CPU macht es aber trotzdem nicht gleichzeitig, wie gesagt das sieht auf grund der Geschwindigkeit nur so aus.
 
Interessant zu was meine einfache Frage hier verkommt ... (Dachte hier gehts ordentlicher zu als im LUXX ...)

Ich möchte einfach einen Test, der mir sagt wie viele Kerne Apex auslastet / nutzt.
Da ich es offensichtlich nicht selbst testen kann!

Lesen, denken, verstehen, nochmal lesen, sicher gehen das verstanden wurde und dann erst schreiben!
Entweder der nächste postet hier einen Link zu einem Test der genau das Ergebnis liefert (ohne FPS-Cap), oder jemand hat die Lust genau das zu testen und hier zu posten. Aber bitte hört auf mit unnötigen Ausführungen / Erklärungen Antworten, welche die Frage nicht beantworten!
 
mal eine Frage weil es ein bisschen zum Thema passt:

Ich habe versucht bei Apex meinen 8-Core FX, unter Windows 10, mit nur 6 oder 4 Kernen laufen zu lassen.

Wenn ich im Task Manager bei "r5apex.exe" bei "Zugehörigkeit festlegen" 2 oder 4 Kerne deaktivieren möchte kommt eine Fehlermeldung siehe Bild:

001apex.JPG


Kann man dies bei Apex nicht machen oder mach ich was falsch ?
 
Manche Games verhindern den Zugriff.
Du machst nix falsch.
 
Zurück
Oben