Games Task Scheduler (GTS)
A multi-processor scheduling framework for games engines
|
Classes | |
class | gts::Backoff< GROWTH_RATE, YIELD > |
An object that backs-off a thread to reduce contention with other threads. More... | |
struct | gts::LockShared< TMutex > |
A scoped lock for a shared mutex concept. More... | |
struct | gts::Lock< TMutex > |
A scoped lock for a mutex concept. More... | |
class | gts::UnfairSpinMutex< TBackoff > |
A unfair (first-ready-first-serve) spin mutex. More... | |
class | gts::FairSpinMutex< TBackoff > |
A fair (first-come-first-serve) spin mutex. More... | |
class | gts::UnfairSharedSpinMutex< TReaders, TBackoff > |
A unfair reader-writer spin mutex. More... | |
Enumerations | |
enum class | gts::BackoffGrowth { Arithmetic , Geometric } |
The growths rates for a back-off algorithm. More... | |
Functions | |
GTS_INLINE void | gts::spin (uint32_t count) |
Spin on pause 'count' times. | |
GTS_INLINE void | gts::pauseFor (uint32_t cycleCount) |
Spin wait for the specified number of cycles. | |
A library of spinlocks and contention reducing algorithms.
|
strong |