07-05-2013 04:06 PM - last edited on 03-05-2024 11:27 PM by ROGBot
Futuremark 3DMARK TECNICAL GUIDE: The multithreading model is based on DX11 deferred device contexts and command lists. The engine utilizes one thread per available CPU core. One of the threads is considered as the main thread, which uses both immediate device context and deferred device context. The other threads are worker threads, which use only deferred device contexts.
Rendering workload is distributed between the threads by distributing items (e.g. geometries and lights) in the rendered scene to the threads. Each thread is assigned roughly equal amount of scene items.
When rendering a frame, each thread does the work associated to items assigned to the thread. That includes, for example, computation of transformation matrix hierarchies, computation of shader parameters (constants buffer contents and dynamic vertex data) and recording of DX API calls to a command list. When the main thread is finished with the tasks associated to its own items, it executes the command lists recorded by worker threads.
07-05-2013 04:17 PM
07-05-2013 05:17 PM
07-05-2013 05:33 PM
07-05-2013 11:57 PM
07-06-2013 12:16 AM
07-06-2013 08:16 AM