An Improved Linux Priority Scheduling Method Based on XGBoost

Ningke Yang, Xinfeng Shu, Liang Chen · 2024

In order to address the issue of excessive resource consumption due to frequent context switching when running a large number of compute-intensive tasks in high-load scenarios on Linux. The paper proposes a scheduling algorithm that utilizes e$B$PF programs to extract fine-grained data such as process memory usage, execution time, read/write rates, etc. This data is then used to construct a dataset, and an XGBoost algorithm model is employed to predict the future resource consumption of processes. Simultaneously, based on the characteristics of binary classification and multi-classification tasks in the XGBoost algorithm, tasks are assigned different scheduling priorities according to CPU utilization rates. Tasks of corresponding types are then executed based on CPU status before the priority scheduling algorithm is applied.Experimental comparisons reveal that under similar conditions, reducing the overhead of context switching results in a 1.03% improvement in overall task execution time and enhances CPU running efficiency. Consequently, it is concluded that this improved Linux priority scheduling method based on XGBoost can enhance execution efficiency when running numerous compute-intensive tasks in high-load environments.

Read the paper · More papers on PaperTik