Project Description
Investigate adding advanced / user-defined / adaptive thread scheduling to OpenMP. As modern machines increase in the amount of parallelism, how work is scheduled across threads matters to a greater extent. We know that there are scheduling algorithms that can give better performance than those already included in the OpenMP specification for a significant variety of workloads. This activity, associated with the DOE/ECP SOLLVE project, investigates how OpenMP can be extended to incorporate these capabilities.
Testbed
Access to CPU hardware running OpenMP with a large number of cores (e.g., Intel Xeon, KNL, POWER, ARM). We should not need any hardware not otherwise available within JLSE.