Optimizing memory allocation for multistage scheduling including setup times

Mapping linear workflow applications onto a set of homogeneous processors can be optimally solved in polynomial time for the throughput objective with fewer processors than stages. This result holds true even when setup times occur in the execution and homogeneous buffers are available for the storage of intermediate results. In this kind of application, several computation stages are interconnected as a linear application graph, and each stage holds a buffer of limited size where intermediate results are stored and a processor setup time occurs when passing from one stage to another. In this paper, we tackle the problem in which the buffer sizes are not given beforehand and must be fixed before the execution to maximize the throughput within each processor. The goal of this work is to minimize the cost induced by the setup times by allocating buffers that are proportinal in size to each other. We present a closed formula to compute the optimal buffer allocation in the case of nondecreasing setup costs in the linear application. For the case of unsorted setup times, we provide competitive heuristics that are validated via extensive simulation. Three nonscalable brute force algorithms are also provided to compare heuristic approaches to optimal ones for small applications and to evaluate the relevance of our approach.

[1]  Jean-Marc Nicod,et al.  Throughput Optimization for Pipeline Workflow Scheduling with Setup Times , 2012, Euro-Par Workshops.

[2]  Yves Robert,et al.  Mapping pipeline skeletons onto heterogeneous platforms , 2007, J. Parallel Distributed Comput..

[3]  Ümit V. Çatalyürek,et al.  Investigating the use of GPU-accelerated nodes for SAR image formation , 2009, 2009 IEEE International Conference on Cluster Computing and Workshops.

[4]  W.E. Snyder,et al.  Color image processing pipeline , 2005, IEEE Signal Processing Magazine.

[5]  U. Srivastava,et al.  Ordering Pipelined Query Operators with Precedence Constraints , 2005 .

[6]  Jaspal Subhlok,et al.  Optimal mapping of sequences of data parallel tasks , 1995, PPOPP '95.

[7]  Jaspal Subhlok,et al.  Optimal latency-throughput tradeoffs for data parallel pipelines , 1996, SPAA '96.

[8]  P. Luh,et al.  Job shop scheduling with group-dependent setups, finite buffers, and long time horizon , 1995, Proceedings of 1995 34th IEEE Conference on Decision and Control.

[9]  Fernando Guirado,et al.  Exploiting Throughput for Pipeline Execution in Streaming Image Processing Applications , 2006, Euro-Par.

[10]  Kun-Lung Wu,et al.  Elastic scaling of data parallel operators in stream processing , 2009, 2009 IEEE International Symposium on Parallel & Distributed Processing.

[11]  B. Norman Scheduling flowshops with finite buffers and sequence-dependent setup times , 1999 .

[12]  Ali Allahverdi,et al.  The significance of reducing setup times/setup costs , 2008, Eur. J. Oper. Res..