4 ms·
I'd appreciate any informed theories as to why this might be the case! The r/Games thread which pointed me to this is full of non-technical explanations of the
by mintplant 8y ago
I'd appreciate any informed theories as to why this might be the case! The r/Games thread which pointed me to this is full of non-technical explanations of the concept of multi-threading and vague jabs at the developers for not 'optimizing' enough.
- klowner 8y agoWith 100 threads running like that, not only do you have the overhead of the OS scheduling 100 threads to run on ~8 or whatever cpu cores, but also I would assume these threads are all running different code, so there would be some overhead with context switching / cache. Presumably these threads communicate, so they're likely using some form of synchronization primitives. Here's a pretty enjoyable video about how they handled this sort of engine design problem using something sensible: https://www.gdcvault.com/play/1022186/Parallelizing-the-Naughty-Dog-Engine https://www.gdcvault.com/play/1022186/Parallelizing-the-Naug...