- Designed to be a drop in header only task scheduler, although its best to compile it as a lib to reduce compilation times for your project
- A task-stealing scheduler, where worker threads will attempt to steal tasks from its neighbours when its idle
- Each task scedules its dependencies on other free worker queues based on work load estimates
- The scheduler has been optimized to reduce the amount of time spent in the synchronous portion of code
- A graph of tasks and dependencies can be loaded from disk
- Supports task and data parallelism
- Suports task affinities and exclusions
- Scheduler has been optimized for microsecond latency task scheduling on modern cpus
- Tests are included to benchmark the scheduler for various types of workloads
- Support for green threads/fibers will be added in future
A fully lockless task scheduler
License
viknash/TaskScheduler
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
About
A fully lockless task scheduler
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published