A Modified Method for Task Scheduling in Linux Kernel Based on Determining the Intensity of Memory Access - Varlamova, E. A.; Romanova, T. N. (Programming and computer software, 2025)
Currently, mobile devices must meet high performance requirements and provide extended battery life, which implies low power consumption. These parameters directly depend on the processor frequency: at higher frequencies, the processor can execute more instructions per unit of time but consumes more energy, and vice versa. This paper investigates modern process scheduling methods in the Linux operating system kernel with the aim of enhancing performance and reducing power consumption in mobile devices. The process scheduling method used in Linux is modified so that it specifically focuses on the selection of the CPU core queue for a process and on the selection of the processor core frequencies. The modification is based on solving a discrete bi-criteria optimization problem. The optimization criteria consider two interrelated characteristics: performance and power consumption. The core idea of the modification is to analyze the instructions of executing tasks to identify situations where increasing the processor frequency becomes inefficient due to frequent memory accesses. The problem is solved under certain constraints: heterogeneous architectures are not considered, and hardware multithreading is not taken into account, i.e., each logical core is treated as a physical one. Based on the proposed method, software was developed and tested using ten benchmarks from the Rodinia Benchmark Suite. This suite is used to evaluate the performance of computers on various tasks, such as general-purpose computing, image processing, and signal processing. The results of the study showed that the application of the proposed approach reduces the average power consumption by 13% in mobile devices and increases the performance by 4% compared to the existing Linux kernel scheduler.