Single Restart with Time Stamps for Parallel Task Processing with Known and Unknown Processors

We study the problem of scheduling <inline-formula><tex-math notation="LaTeX">$n$</tex-math><alternatives><mml:math><mml:mi>n</mml:mi></mml:math><inline-graphic xlink:href="liang-ieq1-2929173.gif"/></alternatives></inline-formula> tasks on <inline-formula><tex-math notation="LaTeX">$m+m^{\prime }$</tex-math><alternatives><mml:math><mml:mrow><mml:mi>m</mml:mi><mml:mo>+</mml:mo><mml:msup><mml:mi>m</mml:mi><mml:mo>'</mml:mo></mml:msup></mml:mrow></mml:math><inline-graphic xlink:href="liang-ieq2-2929173.gif"/></alternatives></inline-formula> parallel processors, where the processing times on <inline-formula><tex-math notation="LaTeX">$m$</tex-math><alternatives><mml:math><mml:mi>m</mml:mi></mml:math><inline-graphic xlink:href="liang-ieq3-2929173.gif"/></alternatives></inline-formula> processors are known while those on the remaining <inline-formula><tex-math notation="LaTeX">$m^{\prime }$</tex-math><alternatives><mml:math><mml:msup><mml:mi>m</mml:mi><mml:mo>'</mml:mo></mml:msup></mml:math><inline-graphic xlink:href="liang-ieq4-2929173.gif"/></alternatives></inline-formula> processors are not known a priori. This semi-online model is an abstraction of certain heterogeneous computing systems, e.g., with the <inline-formula><tex-math notation="LaTeX">$m$</tex-math><alternatives><mml:math><mml:mi>m</mml:mi></mml:math><inline-graphic xlink:href="liang-ieq5-2929173.gif"/></alternatives></inline-formula> known processors representing local CPU cores and the unknown processors representing remote servers with uncertain availability of computing cycles. Our objective is to minimize the makespan of all tasks. We initially focus on the case <inline-formula><tex-math notation="LaTeX">$m^{\prime }=1$</tex-math><alternatives><mml:math><mml:mrow><mml:msup><mml:mi>m</mml:mi><mml:mo>'</mml:mo></mml:msup><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:math><inline-graphic xlink:href="liang-ieq6-2929173.gif"/></alternatives></inline-formula> and propose a semi-online algorithm termed Single Restart with Time Stamps (SRTS), which has time complexity <inline-formula><tex-math notation="LaTeX">$O(n \log n)$</tex-math><alternatives><mml:math><mml:mrow><mml:mi>O</mml:mi><mml:mo>(</mml:mo><mml:mi>n</mml:mi><mml:mo form="prefix">log</mml:mo><mml:mi>n</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math><inline-graphic xlink:href="liang-ieq7-2929173.gif"/></alternatives></inline-formula>. We derive its competitive ratio in comparison with the optimal offline solution. If the unknown processing times are deterministic, the competitive ratio of SRTS is shown to be either always constant or asymptotically constant in practice, respectively in cases where the processing times are independent and dependent on <inline-formula><tex-math notation="LaTeX">$m$</tex-math><alternatives><mml:math><mml:mi>m</mml:mi></mml:math><inline-graphic xlink:href="liang-ieq8-2929173.gif"/></alternatives></inline-formula>. A similar result is obtained when the unknown processing times are random. Furthermore, extending the ideas of SRTS, we propose a heuristic algorithm termed SRTS-Multiple (SRTS-M) for the case <inline-formula><tex-math notation="LaTeX">$m^{\prime }>1$</tex-math><alternatives><mml:math><mml:mrow><mml:msup><mml:mi>m</mml:mi><mml:mo>'</mml:mo></mml:msup><mml:mo>></mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:math><inline-graphic xlink:href="liang-ieq9-2929173.gif"/></alternatives></inline-formula>. Finally, where tasks arrive dynamically with unknown arrival times, we extend SRTS to Dynamic SRTS (DSRTS) and find its competitive ratio. Besides the proven competitive ratios, simulation results further suggest that SRTS and SRTS-M give superior performance on average over randomly generated task processing times, substantially reducing the makespan over the best known alternatives. Interestingly, the performance gain is more significant for task processing times sampled from heavy-tailed distributions.