This paper introduces the \emph{serial-parallel decision problem}. Consider an online scheduler that receives a series of tasks, where each task has both a parallel and a serial implementation. The parallel implementation has the advantage that it can make progress concurrently on multiple processors, but the disadvantage that it is (potentially) work-inefficient. As tasks arrive, the scheduler must decide for each task which implementation to use. We begin by studying \emph{total awake time}. We give a simple \emph{decide-on-arrival} scheduler that achieves a competitive ratio of $3$ for total awake time -- this scheduler makes serial/parallel decisions immediately when jobs arrive. Our second result is an \emph{parallel-work-oblivious} scheduler that achieves a competitive ratio of $6$ for total awake time -- this scheduler makes all of its decisions based only on the size of each serial job and without needing to know anything about the parallel implementations. Finally, we prove a lower bound showing that, if a scheduler wishes to achieve a competitive ratio of $O(1)$, it can have at most one of the two aforementioned properties (decide-on-arrival or parallel-work-oblivious). We also prove lower bounds of the form $1 + \Omega(1)$ on the optimal competitive ratio for any scheduler. Next, we turn our attention to optimizing \emph{mean response time}. Here, we show that it is possible to achieve an $O(1)$ competitive ratio with $O(1)$ speed augmentation. This is the most technically involved of our results. We also prove that, in this setting, it is not possible for a parallel-work-oblivious scheduler to do well. In addition to these results, we present tight bounds on the optimal competitive ratio if we allow for arrival dependencies between tasks (e.g., tasks are components of a single parallel program), and we give an in-depth discussion of the remaining open questions.
翻译:本文引入了“串行-并行决策问题”。考虑一个在线调度器,它接收一系列任务,每个任务同时具有并行实现和串行实现。并行实现的优势在于能够在多个处理器上并发推进,但其劣势在于(可能)存在工作低效问题。随着任务到达,调度器必须为每个任务决定采用哪种实现方式。我们首先研究“总唤醒时间”。我们提出一种简单的“到达即决策”调度器,该调度器在任务到达时立即做出串行/并行决策,并实现了总唤醒时间竞争比为$3$。第二个成果是一种“并行工作无关”调度器,它仅基于每个串行任务的大小做出决策,无需了解并行实现的任何信息,实现了总唤醒时间竞争比为$6$。最后,我们证明了一个下界:若调度器希望达到$O(1)$竞争比,则最多只能具备上述两种特性之一(到达即决策或并行工作无关)。我们还证明了调度器的最优竞争比存在$1 + \Omega(1)$形式的下界。接下来,我们关注“平均响应时间”优化。在此场景下,我们证明通过$O(1)$的速度提升可以实现$O(1)$竞争比——这是本文技术难度最高的成果。同时证明在此设定下,并行工作无关调度器无法取得良好性能。除上述成果外,我们给出了允许任务间存在到达依赖关系(如任务构成单个并行程序的组件)时的最优竞争比紧界,并对剩余开放问题进行了深入讨论。