Fusing Efficient Parallel For Loops with a Composable Task Scheduler
summary
This work fuses parallel-for loops with a composable task scheduler inside an Intel OpenCL runtime, implementing a mailbox distributor and an adaptive grain fuser that split and redistribute work across cores. It closes the OpenMP performance gap on multicore CPUs (up to about 3× in some runs versus the prior task runtime), uses dynamic load balancing and per-thread mailboxes, and shows benchmarks where composed tasks match or beat OpenMP and outperform PoCL.
AI-written summary · about
chapters (10)
- 0:00Introduction
- 3:15Parallelism challenges
- 8:07Composable task scheduler
- 13:15System demo
- 22:31Parallelism approaches
- 30:06Implementation details
- 38:30Load balancing issues
- 46:48Composite approach efficiency
- 55:09OpenCL comparison
- 1:00:16Summary and Q&A
related talks
56mParallelizing the C++ Standard Template Library
39mThe best multicore-parallelization refactoring you've never heard of
01h 01mTaskflow: A Parallel and Heterogeneous Task Programming System Using Modern C++
46mMulti-Priority Graph-Based Parallel Execution Using Taskflow
35mAutomatic Parallelism Management
01h 02m“Parallelism in Modern C++"
05mAn Introduction to hpxMP...
01h 02mAsynchronous Programming in Modern C++
