Header menu link for other important links
X
GAS: GPU assisted process scheduling for multicore systems
, Akshay Dhumal, N. K. Garg, Ganesh Kulkarni
Published in Association for Computing Machinery
2018
Abstract
The challenges of process scheduling in multicore systems are more complex compared to those in single-core systems. Parameters such as number of process migrations, individual core component utilization, bus contention, etc., are not considered for making scheduling decisions in the Completely Fair Share (CFS) scheduler present in most Linux kernels. This leads to non-uniform core utilization at the functional unit level. Redesigning schedulers by considering an increased number of parameters for process scheduling is inefficient due to the increased computational complexity and high frequency of calls to the scheduler. Offline profile analysis for scheduling is not advisable as it fails to capture the runtime behaviour of processes if the workload is not periodic. We propose GAS, a GPU assisted scheduling framework for leveraging computational power offered by General-purpose computing on graphics processing units (GPGPU) compute models. Our proposed solution improves the scheduling performance in terms of core component and shared resource utilization. We further extend GAS by using it as a service provided by a GPU cluster. This service can be subscribed by a set of less powerful systems for efficient process scheduling. GAS stabilizes the system at runtime, based on the hardware performance counters. Experiments on the real-world Spark-bench benchmark show that GAS is able to achieve 24% reduction in execution time on average than the default Linux Scheduler. © 2018 Association for Computing Machinery.
About the journal
JournalData powered by TypesetACM International Conference Proceeding Series
PublisherData powered by TypesetAssociation for Computing Machinery
Open AccessNo
Concepts (15)
  •  related image
    Computer graphics
  •  related image
    Computer hardware
  •  related image
    Gases
  •  related image
    Linux
  •  related image
    Program processors
  •  related image
    Scheduling
  •  related image
    GENERAL-PURPOSE COMPUTING
  •  related image
    GPGPU
  •  related image
    HARDWARE PERFORMANCE COUNTERS
  •  related image
    Multi-core systems
  •  related image
    PROCESS SCHEDULING
  •  related image
    Scheduling decisions
  •  related image
    SCHEDULING FRAMEWORKS
  •  related image
    SCHEDULING PERFORMANCE
  •  related image
    Graphics processing unit