Taskflow: A Parallel and Heterogeneous Task Programming System Using Modern C++
summary
Taskflow is a C++14 library that implements a task graph runtime with cudaFlow / CUDA Graph integration, condition tasks for cycles and iterative control, and a heterogeneous work‑stealing executor that adapts active workers to available parallelism. Real workloads (40 CPUs + 4 GPUs) run up to 1.5× faster, use 1.6× less memory and 1.7× fewer lines than oneTBB and StarPU; microbenchmarks show lower task creation overhead though Taskflow uses more memory per node. The system is open source and supports subflow, module composition, and CPU–GPU pipelining.
AI-written summary · about
chapters (7)
- 0:00Introduction to Taskflow
- 10:27Core programming model
- 23:18Heterogeneous tasking with CUDA
- 30:46Scheduling algorithms
- 40:43Real-world performance results
- 48:29C++ parallelism challenges
- 53:00Future directions and Q&A
related talks
46mMulti-Priority Graph-Based Parallel Execution Using Taskflow
01h 05mFusing Efficient Parallel For Loops with a Composable Task Scheduler
01h 02m“Parallelism in Modern C++"
56mParallelizing the C++ Standard Template Library
01h 02mAsynchronous Programming in Modern C++
15mProgramming and Execution Models for Parallel Bounded Exhaustive Testing
35mAutomatic Parallelism Management
01h 04mAtomics, Locks, and Tasks (part 2 of 2)
