Leakage-Safe and Scheduler-Aware Machine Learning for Grid Job Runtime Prediction
Organizations: Augustana College, USA · Florida International University, USA · Dakota State University, USA
Abstract
Accurate job runtime prediction can improve scheduling-aware resource management in grid and distributed computing environments, but prediction models must be evaluated under realistic deployment constraints. This paper revisits CPU burst time prediction on the GWA-T-4 AuverGrid workload trace and reformulates it as leakage-safe pre-execution job runtime prediction. We define the target as job-level runtime, use only submission-time attributes, exclude post-execution variables, and evaluate models under temporal and cold-start settings rather than relying only on random cross-validation. We compare standard regressors, chronological historical baselines, categorical encoding strategies, and CatBoost with native categorical handling. We further add temporal hyperparameter tuning, runtime predictability analysis, feature ablation, error analysis by job length, and a minimal scheduling simulation. After temporal-validation tuning, CatBoost achieves the strongest deployment-oriented result with R^2=0.239, MAE=27,019, RMSE=46,587, and LogMAE=2.646 on the held-out temporal test set. A single-server simulation over all 69,523 held-out temporal test jobs shows that prediction-informed SJF reduces average waiting time by 50.92% relative to FCFS. The results show that random-split evaluation overestimates performance, categorical-native boosting improves temporal generalization, and long-job underestimation remains a scheduler-relevant challenge.
Figures & tables
| Statistic | Raw Trace | Final Dataset |
|---|---|---|
| Jobs | 404,176 | 347,611 |
| Columns | 29 | 18 |
| Temporal training jobs | – | 278,088 |
| Temporal test jobs | – | 69,523 |
| Attribute | Category | Use |
|---|---|---|
| SubmitTime | Pre-submit metadata | Used |
| SubmitTime-derived features | Temporal metadata | Used |
| ReqNProcs | Pre-submit request | Used |
| ReqTime | Pre-submit request | Used |
| ReqMemory | Pre-submit request | Used |
| UserID | Pre-submit identifier | Used with training-only encoding |
| Statistic | Value |
|---|---|
| Jobs with positive runtime | 339,314 |
| Mean runtime | 25,802 |
| Median runtime | 2,658 |
| Runtime standard deviation | 41,083 |
| Maximum runtime | 1,575,814 |
| 95th percentile | 97,796 |
| Model | MAE | RMSE | LogMAE | |
|---|---|---|---|---|
| CatBoost | 0.239 | 27,019 | 46,587 | 2.646 |
| Setting | Best Model | MAE | RMSE | LogMAE | |
|---|---|---|---|---|---|
| Leakage-safe random 5-fold | K-NN | 0.700 | 7,417 | 22,332 | 0.679 |
| Temporal 80/20, conventional models | Linear Regression | 0.085 | 33,589 | 51,095 | 2.777 |
| Temporal 80/20, native categorical | CatBoost | 0.239 | 27,019 | 46,587 | 2.646 |
| User cold-start | Gradient Boosting | 0.133 | 23,747 | 36,988 | 3.425 |
| Executable cold-start | K-NN | 0.207 | 17,680 | 38,072 | 2.126 |
| Split | Baseline | MAE | RMSE | LogMAE | |
|---|---|---|---|---|---|
| Random 80/20 | Global Median | -0.311 | 24,828 | 46,820 | 3.111 |
| Random 80/20 | User Median | 0.131 | 18,391 | 38,105 | 1.851 |
| Random 80/20 | Group Median | -0.177 | 23,489 | 44,360 | 2.651 |
| Random 80/20 | Executable Median | -0.315 | 24,778 | 46,881 | 3.091 |
| Random 80/20 | User EMA | 0.638 | 8,847 | 24,587 | 0.949 |
| Random 80/20 | Executable EMA | 0.305 | 17,412 | 34,092 | 2.061 |
| Model | Encoding | MAE | RMSE | LogMAE | |
|---|---|---|---|---|---|
| Linear Regression | One-hot | -0.171 | 43,524 | 57,797 | 3.141 |
| Random Forest | One-hot | -0.005 | 29,184 | 53,536 | 2.479 |
| Gradient Boosting | One-hot | 0.062 | 30,131 | 51,723 | 2.675 |
| XGBoost | One-hot | -0.023 | 31,191 | 54,016 | 2.563 |
| Linear Regression | Ordinal | -0.122 | 45,237 | 56,573 | 3.254 |
| Random Forest | Ordinal | -0.051 | 33,478 | 54,759 | 2.709 |
| Feature Group | MAE | RMSE | LogMAE | |
|---|---|---|---|---|
| All features | 0.239 | 27,019 | 46,587 | 2.646 |
| Identifiers + requested resources | 0.129 | 29,149 | 49,850 | 2.401 |
| Identifiers only | 0.126 | 29,293 | 49,945 | 2.333 |
| Raw submit-time only | -0.009 | 35,068 | 53,667 | 3.000 |
| Cyclic submit-time only | -0.027 | 36,710 | 54,129 | 3.033 |
| Requested resources only | -0.031 | 33,454 | 54,232 | 2.926 |
| Model | MAE | RMSE | LogMAE | |
|---|---|---|---|---|
| Linear Regression | -0.057 | 36,190 | 48,719 | 3.071 |
| Random Forest | 0.021 | 27,243 | 46,900 | 2.534 |
| Gradient Boosting | 0.065 | 27,735 | 45,829 | 2.736 |
| Feature | Importance Mean | Std. |
|---|---|---|
| UserID | 0.1102 | 0.0020 |
| GroupID | 0.0605 | 0.0028 |
| ReqTime | 0.0229 | 0.0008 |
| SubmitDayCos | 0.0066 | 0.0017 |
| SubmitWeekCos | 0.0016 | 0.0003 |
| OrigSiteID | 0.0010 | 0.0005 |
| Job Group | N | Mean True | Mean Pred. | Mean Error | Underest. Rate |
|---|---|---|---|---|---|
| Short | 17,385 | 70 | 22,243 | 22,173 | 0.211 |
| Medium | 17,377 | 880 | 22,334 | 21,455 | 0.133 |
| Long | 17,380 | 19,595 | 23,941 | 4,346 | 0.461 |
| Very long | 13,904 | 86,300 | 54,396 | -31,903 | 0.826 |
| Extreme | 3,477 | 182,032 | 76,585 | -105,448 | 1.000 |
| Scheduler | Avg. Waiting | Median Waiting | Avg. Turnaround | Waiting Improvement |
|---|---|---|---|---|
| FCFS | 82,926,590 | 84,516,105 | 82,958,498 | 0.00% |
| Predicted SJF | 40,698,550 | 26,872,289 | 40,730,460 | 50.92% |
| Oracle SJF | 20,043,860 | 16,415 | 20,075,770 | 75.83% |
High-Performance Computing
High-performance computing (HPC) uses parallel systems and optimized software to solve computationally demanding scientific and engineering problems.
See all 143 papers