Detor wrote:
Autenil wrote:Currently, we only spin up one other helper thread if you have more than one CPU. This means that right now on Test the game generally maxes out its potential on dual-core machines. There's a few reasons for this:- The transition to multi-core support is very complicated and will most certainly be done incrementally.
- Multi-threaded code requires a lot of synchronization and I don't want to reduce performance on single-core machines
- On my dual-core development machine, the game has used a maximum spike of about 30% of my second core. Adding more cores into the mix while the second core is still under-utilized just degrades your system performance for no reason.
I'm definitely very excited about this change and will keep working on making the additional core support take over more of the CPU-bound part of the engine as well as look into supporting more than dual-core.
Actually I was just on test and I'm on a quad core machine and it looked like at times it was using more than just 2 cores.
In game running around it was:
Core 1 - 99-100%
Core 2 - 5-8%
Core 3 - 0-1%
Core 4 - 0-1%
But when I went to zone it seemed it was able to use more than just 2 cores:
Core 1 - 30-40%
Core 2 - 30-40%
Core 3 - 30-40%
Core 4 - 30-40%
It seemed to evenly use all 4 cores when zoning.
Still, it's best to change the affinity of EQ2 if you're on a multicore machine, you tell Windows you want EQ2 running on Core 2 instead of the default (Core 1) and you get a very sizable performance boost. As far as I can tell windows runs things on core 1 that it just absolutely will not run on other cores. Therefore if you have EQ2 primarily using a different core than Core 1 it has a lot more performance to work with on one of the other cores. This can mean as much as a 35% difference in frame rate depending on what you're doing in game.
I really suggest
against setting the process affinity to one core, especially with multicore mode turned on. Setting the affinity to one core basically un-does all of the good that multicore mode does, plus it causes the game to run as if you're on single-core hardware. The game does have other threads for I/O-bound operations (such as loading textures, meshes, etc) and it's better (especially when zoning) when these run on separate cores. This occurs naturally through the Windows task scheduler when you leave the affinity alone
Depending on which stats you're looking at, the percentage values you mentioned could include all other applications (and the Windows kernel), not just the game.
LINK