In modern computing systems, jobs' resource requirements often vary over time. Accounting for this temporal variability during job scheduling is essential for meeting performance goals. However, theoretical understanding on how to schedule jobs with time-varying resource requirements is limited. Motivated by this gap, we propose a new setting of the stochastic bin-packing problem in service systems that allows for time-varying job resource requirements, also referred to as 'item sizes' in traditional bin-packing terms. In this setting, a job or 'item' must be dispatched to a server or 'bin' upon arrival. Its resource requirement varies over time as a Markov chain while in service. Our goal is to minimize the expected number of active servers, or 'non-empty bins', in the steady state. Under our problem formulation, we develop a job dispatch policy, named Join-Requesting-Server (JRS). We show that in the asymptotic regime where the job arrival rate scales large linearly with respect to a scaling factor r, JRS achieves an additive optimality gap of O(√r) in the objective value, where the optimal objective value is Θ(r). Our approach highlights a novel policy conversion framework that utilizes the solution of a single-server problem.
Read full abstract