Zarathustra[H]
Extremely [H]
- Joined
- Oct 29, 2000
- Messages
- 38,858
And that is how it used to be see how well Battlefield 4 runs on a PS4 it can only get better. And you still want to keep up the serial aspect of it then BF4 simply would not have existed on consoles at all ..
What you don't seem to understand is that not all code lends itself to multithreading. It's elementary computer science, not just a desire to not do it.
There is always a percentage of code that simply does not lend itself well to threading, that's why the Amdahl's law chart has lines for different percentages.
Most game code tends to have a very high percentage of code that can not be threaded due to all the conditional outcomes and risks of thread locking where two (or more) threads becone stuck waiting g for each other. They often find ways around this by instead of truly multithreading the game code, splitting it up in multiple instances of serial code (like, sound engine in one thread, GPU supporting process in another, game logic in a third, etc.)
This helps you take advantage multiple cores better than just running one serial thread, but you are still running multiple serial threads that are either non-trivial or completely.impossible to split up further than they already are, and once it is done might actually reduce performance rather than improve it.
Because of this, for most titles, threading has pretty much gotten as good as it ever will at this point.
Tou are correct. BF4 is a great example of threading what CAN be threaded (like the physics engine and stuff like that) and splitting everything else up into smaller serialized chunks so that it distributes the load over multiple cores.
Some titles also lend themselves better to multithreading in the game engine, Like Civ5, as there are many semi-independent calculations between rounds, but other titles can't use this approach.
Unless the underlying theories of how software logic works change somehow, I don't see how we are ever going to improve threading of game titles beyond the level of a well threaded current title.