Scheduling Splittable Jobs on Configurable Machines
arXiv:2312.05416
Abstract
Motivated by deep neural network applications, we study the problem of scheduling splittable jobs (e.g., neural network inference tasks) on configurable machines (e.g., multi-instance GPUs). We are given jobs and a set of configurations (e.g, representing ways to configure a GPU) consisting of multisets of blocks (e.g., representing GPU instances). A schedule consists of a set of machines, each assigned some configuration in with each block in the configuration assigned to process one job. The amount of a job's demand that is satisfied by a given block is an arbitrary function of the job and block. The objective is to satisfy all demands on as few machines as possible. We provide a tight logarithmic approximation algorithm for this problem in the general setting, an asymptotic -approximation with input configurations for arbitrary , and a polynomial time approximation scheme when both the number and size of configurations are .