Naja, dann bestätigst Du uns ja nur.
Graka voll ausgelastet: Graka-Limit.
Und jetzt der Umkehrschluss (ist es wirklich so schwer zu glauben?).
Graka nicht voll ausgelastet: CPU-Limit.
Und dabei ist die Auslastung der CPU an sich völlig egal (auch wenn einige irgendwas am Taskmanager erkennen können wollen).
Das ist etwa 2005 gestorben mit der Einführung der Multicores im Mainstream.
Hat ein Single-Thread-Programm vorher einen CPU-Kern zu 100% ausgelastet, dann hat es auf einem Dualcore jetzt zwei Kerne zu 50% ausgelastet, und war genau das gleiche CPU-Limit wie vorher, nur verteilt auf die Kerne. Genau das gleiche passiert heute mit Deinen 16 Threads.
Das Game läuft auf (keine Ahnung, eventuell zwei) wenigen Kernen, deren Arbeit auf alle Kerne verteilt wird. Deshalb sieht es für Dich so aus, als würde die CPU sich langweilen.
Macht sie aber nicht.
Beispiel: Ein CPU-Limit beweißt man über den Takt. Gehen die FPS mit dem CPU-Takt mit (egal ob hoch oder runter), so liegt zu 100% ein CPU-Limit vor. Wäre es was anderes, würden die FPS nicht mitgehen.
Irgendwas zu 100% ausgelastet? Nö. Braucht es gar nicht. BF3 nutzt weniger Kerne als ich im System habe, die Arbeit wird aber über alle verteilt.
Und falls Du selbst mal die Threadskalierung von Planet Coaster rausfinden möchtest ... schalte Kerne über den Taskmanager ab.
Sieht dann z.b. so aus:
Programm das mit vielen Kernen skaliert
https://www.youtube.com/watch?v=SRojlrCtd-k
Programm das höchstens 4 Kerne nutzt
https://www.youtube.com/watch?v=otIdQ7RqbGI
Sobald Du diese Mechanik mal gerafft hast (Die Nutzung vieler Kerne ist keine Windows-Automatik, sondern sie muss vom Game-Programmierer gestemmt werden), fällt es Dir ganz leicht zu sehen wie viele Kerne ein Programm nutzt. Sobald Du Kerne abschaltest und die FPS mit runter gehen, hast Du den Punkt erreicht an dem das Programm nicht mehr skaliert. Schaltest Du Kerne ab und die FPS bleiben gleich: Werden die Kerne vom Programm gar nicht genutzt.
https://www.youtube.com/watch?v=zkKW3QFjTUo
https://www.youtube.com/watch?v=LoE9VRZN5_8