This paper presents a serverless platform-driven CPU load balancing framework that enables the control plane to directly influence CPU scheduling through a custom Linux scheduler built on SchedExt(SCX).
Abstract
Serverless platforms maintain a global view of function invocations and resource utilization, yet existing systems largely restrict CPU scheduling decisions to the operating system scheduler. This paper presents a serverless platform-driven CPU load balancing framework that enables the control plane to directly influence CPU scheduling through a custom Linux scheduler built on SchedExt(SCX). The proposed scheduler introduces configurable scheduling domains and a shared interface that allows the control plane to assign functions to domains based on their historical inter-arrival times. Within each domain, a single-queue load-balancing strategy combined with a virtual-time prioritization policy improves task placement while reducing interference from busy-polling tasks. Results show that an eight-domain configuration achieves the best trade-off, reducing system energy consumption by approximately 15% while increasing invocation cost by only 5%. Under heavily loaded workloads, the proposed scheduler also reduces request latency by up to 50% compared to the default Linux Completely Fair Scheduler (CFS). These results demonstrate that exposing CPU scheduling decisions to the serverless control plane can improve both energy efficiency and workload performance while preserving scheduling flexibility.
The use of containerized cloud platforms has now become inevitable for latency-sensitive applications; but resource contention between different workloads often creates the problem of noisy neighbors, which causes higher response latency and poor service quality. We present SCX_MUS (Scheduler Extensions for Multi-User Scheduling), a dynamic priority scheduling framework at the kernel level that enhances the CPU allocation to latency-sensitive containers running in Kubernetes environments. The proposed framework uses Linux sched_ext architecture along with the extension of eBPF to support dynamic cgroup-based scheduling through runtime awareness. A lightweight user space component continuously observes the workload of Kubernetes and adjusts the scheduling priorities of the containers without any need for recompiling the kernel or restarting containers. The experimental evaluation of the proposed framework was done with the help of Redis and stress-ng workloads in the same benchmarking condition compared to the native Linux Completely Fair Scheduler (CFS). The experimental results reveal a significant improvement in terms of latency reduction, enhanced throughput, efficient utilization of CPU resources, and stable performance of scheduling under resource contention.
T. Rajkumar, Nishanth D., Prabu M. et al.· Journal of Soft Computing Pa...· 0 citations
Adaptive CPU scheduling that responds to dynamic workload characteristics remains an open challenge for minimal operating systems. Traditional schedulers employ static parameters unsuitable for heterogeneous workloads, while recent machine learning approaches incur overhead inappropriate for resource-constrained environments. This paper presents Load-Aware Adaptive Scheduling (LAAS), a novel approach that integrates real-time system load classification with entropy-inspired process scoring to enable dynamic scheduling decisions. The core innovation—a load-dependent scoring formula where weight values adapt based on system load class—represents the first application of entropy principles to CPU process selection logic in a minimal kernel. LAAS achieves adaptation without machine learning runtime overhead (sub-0.5% CPU vs. 1% for ML-based approaches) and is suitable for minimal monolithic kernels (approximately 1,500 LOC total implementation). Experimental evaluation on synthetic workloads demonstrates 31% reduction in average waiting time, 28% reduction in context switches, and 18% improvement in CPU utilization compared to standard Round-Robin scheduling, while achieving a Jain fairness index of 0.94 in our test scenarios. These results indicate that load-aware, entropy-inspired adaptive scheduling is practically feasible in severely resource-constrained kernel environments.
Durgesh Kumar, Aviskha Talukdar, Nandani et al.· 2026 7th International Confe...· 0 citations
The default scheduler of Kubernetes, the state-of-the-art container orchestrator, uses fast, local placement decisions. Unfortunately, this design leads to resource fragmentation, reduced cluster usage, and overprovisioning. External solvers can compute global placement plans, but enforcing these plans in upstream clusters is hard. Kubernetes provides no native cross-node preemption, uncoordinated concurrent scheduling leads to inconsistencies, and replacing the default scheduler would sever deployments from upstream cycles. We present OPSche, an open-source Kubernetes Scheduling Framework plugin where external solvers can drive cluster-wide placement decisions in concert with the default scheduler. OPSche atomically validates and enforces solver-produced plans through coordinated framework hooks and supports three trigger modes: scheduling-failure, periodic, and stable-queue -- resp. triggered when a workload cannot be placed, at fixed time intervals, when the set of pending workloads stabilises. Each mode has a blocking variant for a finer tuning of placement quality, latency, and disruption. We pair OPSche with a constraint-based optimisation solver, showing its feasibility across a broad set of cluster configurations and reporting improvements of resource usage by up to 3.0% and scheduling latency by more than a second.
Henrik Christensen, S. Giallorenzo, J. Mauro· 0 citations
This study assesses the scalability of process-based and thread-based schedulers for many-core shared-memory systems using a memory-intensive row-wise quick-sort workload on large three-dimensional tensors. The process-based evaluation considers bounded prolific, bounded collective, and three pipe-based producer-consumer schedulers: one-to-one, one-to-many, and many-to-many. These pipe schedulers dynamically stream task identifiers to worker processes, exchanging increased inter-process communication overhead for enhanced runtime load balancing and flexible chunk-based task dispatching. The thread-based evaluation examines static, dynamic, guided, chunk-based, chunk-stealing, adaptive chunk, and AIMD adaptive scheduling strategies. The AIMD scheduler employs an additive-increase multiplicative-decrease policy inspired by TCP congestion control, utilizing an exponentially weighted moving average (EWMA) of CPU utilization to regulate a contention window that limits the number of concurrently active chunks. The adaptive chunk scheduler further modifies chunk size based on observed per-thread execution speed. Experimental results on a 24-core x86-64 platform indicate that thread schedulers deliver the highest overall performance, with dynamic and guided scheduling yielding the most favorable practical outcomes. Among process schedulers, pipe-based designs demonstrate the strongest scalability, with one-to-one pipes excelling for smaller workloads and many-to-many pipes preferred for larger workloads. In summary, lightweight thread scheduling is optimal for shared-memory row sorting, while AIMD/adaptive scheduling and pipe-based process scheduling remain valuable for contention-aware execution, explicit inter-process coordination, and distributed-style heterogeneous workload management.
Mejgan Dedaj, Argyro Gailla, T. Ioannou et al.· 0 citations