A Comparative Study of OpenMP Scheduling Algorithm Selection Strategies

📅 2025-07-27
📈 Citations: 0
Influential: 0
📄 PDF

career value

248K/year
🤖 AI Summary
OpenMP’s static scheduling policies rely heavily on manual tuning and struggle to adapt to diverse applications and heterogeneous platforms. To address this, we propose a dynamic scheduling selection framework that synergistically integrates domain expertise with reinforcement learning (RL). At runtime, the framework adaptively selects optimal scheduling policies based on real-time application characteristics and system state, supports cross-platform deployment, and generalizes to multi-level parallelism (e.g., MPI+OpenMP). Evaluated across six representative applications and three hardware platforms, our hybrid approach outperforms conventional static schedulers—achieving an average 23.6% speedup and reducing load imbalance by 41.2%. The key innovation lies in embedding expert knowledge into RL’s reward formulation and action-space constraints, thereby enabling interpretable, efficient, and generalizable dynamic scheduling optimization.

Technology Category

Application Category

📝 Abstract
Scientific and data science applications are becoming increasingly complex, with growing computational and memory demands. Modern high performance computing (HPC) systems provide high parallelism and heterogeneity across nodes, devices, and cores. To achieve good performance, effective scheduling and load balancing techniques are essential. Parallel programming frameworks such as OpenMP now offer a variety of advanced scheduling algorithms to support diverse applications and platforms. This creates an instance of the scheduling algorithm selection problem, which involves identifying the most suitable algorithm for a given combination of workload and system characteristics. In this work, we explore learning-based approaches for selecting scheduling algorithms in OpenMP. We propose and evaluate expert-based and reinforcement learning (RL)-based methods, and conduct a detailed performance analysis across six applications and three systems. Our results show that RL methods are capable of learning high-performing scheduling decisions, although they require significant exploration, with the choice of reward function playing a key role. Expert-based methods, in contrast, rely on prior knowledge and involve less exploration, though they may not always identify the optimal algorithm for a specific application-system pair. By combining expert knowledge with RL-based learning, we achieve improved performance and greater adaptability. Overall, this work demonstrates that dynamic selection of scheduling algorithms during execution is both viable and beneficial for OpenMP applications. The approach can also be extended to MPI-based programs, enabling optimization of scheduling decisions across multiple levels of parallelism.
Problem

Research questions and friction points this paper is trying to address.

Selecting optimal OpenMP scheduling algorithms for diverse applications and systems
Evaluating learning-based methods for dynamic scheduling algorithm selection
Improving performance via expert knowledge and reinforcement learning combination
Innovation

Methods, ideas, or system contributions that make the work stand out.

Learning-based OpenMP scheduling algorithm selection
Expert and reinforcement learning methods combined
Dynamic scheduling improves performance and adaptability
🔎 Similar Papers
No similar papers found.
J
Jonas H. Müller Korndörfer
Department of Mathematics and Computer Science, University of Basel, Basel, Switzerland
A
Ali Mohammed
HPE HPC/AI EMEA Research Lab, Basel, Switzerland
A
Ahmed Eleliemy
HPE HPC/AI EMEA Research Lab, Basel, Switzerland
Quentin Guilloteau
Quentin Guilloteau
PostDoc, INRIA
HPCReproducibilityExperimental DesignPerformance EvaluationAutonomic Computing
R
Reto Krummenacher
Department of Mathematics and Computer Science, University of Basel, Basel, Switzerland
F
Florina M. Ciorba
Department of Mathematics and Computer Science, University of Basel, Basel, Switzerland