Files in this item



application/pdfSP20-ECE499-Thesis-ChenJingde.pdf (647kB)Restricted Access


Title:A machine learning approach for load balancing in the Linux kernel
Author(s):Chen, Jingde
Contributor(s):Iyer, Ravishankar
Subject(s):Linux kernel
Completely fair scheduler
Operating system
Load balancing
Machine learning
Abstract:The default scheduler in the Linux Kernel - Completely Fair Scheduler (CFS) aims to provide fairness and maximized utilization of the processing time. It performs load balancing between cores by looking at the cache locality and CPU utilization of individual processes. However, memory cache and processing time are not the only critical hardware resources shared by processes. Contention due to imbalanced needs for other shared computing resources including memory bandwidth, IO bandwidth, arithmetic operations, etc. may still hinder the overall performance. Traditional logical approaches bear limitations in solving this problem due to complex relationships between resources and performance, especially when resources are shared on different levels on the NUMA and chip multiprocessor (CMP) architectures. This thesis explores the possibility of applying Machine Learning (ML) to implement resource-aware load balancing in the Linux kernel. We propose an approach of applying machine learning to a part of the Linux CFS load balancer by imitation learning. Dynamic tracing of kernel functions with eBPF and kprobes was used for runtime data collection of the system. A Multi-Layer Perceptron (MLP) model was then trained to emulate existing kernel load balancing decisions. We present both floating-point and fixed-point implementations of the model inside the kernel and evaluate their performance. Integration of processors’ Hardware Performance Counters (HPCs) for usages inside the kernel via the Perf Subsystem is studied as a support for future works in implementing resource-aware load balancing.
Issue Date:2020-05
Date Available in IDEALS:2020-06-12

This item appears in the following Collection(s)

Item Statistics