EDA Job Scheduling Using Reinforcement Learning with Adaptive Macro Actions
Job scheduling in Electronic Design Automation (EDA) environments presents unique challenges due to high-frequency job submissions, short job durations, and strict latency requirements. Production schedulers such as IBM Spectrum LSF employ robust heuristics like First-Come-First-Served (FCFS) that provide predictable behavior and fairness guarantees. However, these rule-based approaches do not learn from historical workload patterns, leaving potential for further optimization through adaptive methods. We present Adaptive Job Selection (AJS), a reinforcement learning-based agent that learns to schedule pending jobs for reduced job waiting and completion time on LSF clusters for EDA workloads. AJS introduces macro actions that dispatch multiple jobs per inference, addressing the credit assignment problem inherent in high-frequency scheduling while meeting real-time latency constraints. Our lightweight neural network architecture employs cross-attention to capture interactions between job buckets and cluster state, enabling inference at the frequency required by EDA workloads. We deploy AJS as an external plugin in IBM Spectrum LSF and evaluate it on an IBM LSF cluster. Experiments demonstrate that AJS achieves a 62.6% reduction in average job waiting time, a 19.8% reduction in job completion time, a 16.0% improvement in job throughput, and 3.05 percentage points higher CPU utilization compared to the default scheduler. We also share practical lessons for bridging the simulation-to-production gap. To our knowledge, AJS is the first open-source, deployable RL-based scheduler designed for production EDA environments.