2 ms·
I believe a number of video game engines use this approach. There’s a talk about this approach in the game Destiny: https://www.gdcvault.com/play/1022164/Multi
by kettlecorn 8y ago
I believe a number of video game engines use this approach.
There’s a talk about this approach in the game Destiny: https://www.gdcvault.com/play/1022164/Multithreading-the-Entire-Destiny https://www.gdcvault.com/play/1022164/Multithreading-the-Ent...
And also in the Uncharted engine: http://twvideo01.ubm-us.net/o1/vault/gdc2015/presentations/Gyrling_Christian_Parallelizing_The_Naughty.pdf http://twvideo01.ubm-us.net/o1/vault/gdc2015/presentations/G...
They go a step further by allowing threads to pause and resume their state by changing the stack pointer.
These sort of systems are useful in games where you basically want to be using all of the cpu all of the time and there’s no reason to ever give control back to the operating system’s scheduler (with mutexes).