Abstract
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.
Similar content being viewed by others
References
Allahverdi, A., & Soroush, H. (2008). The significance of reducing setup times/setup costs. European Journal of Operational Research, 187(3), 978–984.
Allahverdi, A., Ng, C., Cheng, T., & Kovalyov, M. (2008). A survey of scheduling problems with setup times or costs. European Journal of Operational Research, 187(3), 985–1032.
Benoit, A., & Robert, Y. (2008). Mapping pipeline skeletons onto heterogeneous platforms. Journal of Parallel and Distributed Computing, 68(6), 790–808.
Benoit, A., Coqblin, M., Nicod, J.M., Philippe, L., Rehn-Sonigo, V. (2012). Throughput optimization for pipeline workflow scheduling with setup times, Proceedings of CGWS 2012, the CoreGRID/ERCIM Workshop on Grids, Clouds and P2P Computing, in conjunction with EuroPar 2012. http://graal.ens-lyon.fr/~abenoit/papers/RR-7886.pdf
Bryan, A., & Norman, (1999). Scheduling flowshops with finite buffers and sequence-dependent setup times. Computers & Industrial Engineering, 36(1), 163–177.
Burge, J., Munagala, K. & Srivastava, U. (2005). Ordering pipelined query operators with precedence constraints. Technical Report 2005–40, Stanford InfoLab. http://ilpubs.stanford.edu:8090/705/.
Guirado, F., Ripoll, A., Roig, C., Hernàndez, A., Luque, E. (2006). Exploiting throughput for pipeline execution in streaming image processing applications, Proceedings of the 12th international conference on Parallel Processing, Euro-Par’06 (pp. 1095–1105). Berlin, Heidelberg: Springer.
Hartley, T.D.R., Fasih, A., Berdanier, C.A., Özgüner, F. & Çatalyürek, ÜV. (2009). Investigating the use of gpu-accelerated nodes for sar image formation. CLUSTER, pp. 1–8.
Luh, P. B., Gou, L., Zhang, Y., Nagahora, T., Tsuji, M., Yoneda, K., et al. (1998). Job shop scheduling with group-dependent setups, finite buffers, and long time horizon. Annals of Operations Research, 76, 233–259.
Ramanath, R., Snyder, W., Yoo, Y., & Drew, M. (2005). Color image processing pipeline. Signal Processing Magazine, IEEE, 22(1), 34–43.
Schneider, S., Andrade, H., Gedik, B., Biem, A., & Wu, K.L. (2009). Elastic scaling of data parallel operators in stream processing. Proceedings of the 2009 IEEE International Symposium on Parallel & Distributed Processing, IEEE Computer Society (pp. 1–12). Washington, DC: IPDPS ’09. DOI:10.1109/IPDPS.2009.5161036.
Subhlok, J., & Vondran, G. (1995). Optimal mapping of sequences of data parallel tasks. ACM SIGPLAN Notices, 30(8), 134–143.
Subhlok, J., Vondran, G. (1996) Optimal latency-throughput tradeoffs for data parallel pipelines. Proceedings of the eighth annual ACM symposium on Parallel algorithms and architectures (p. 71). ACM.
Acknowledgments
A. Benoit is with the Institut Universitaire de France. This work was supported in part by the ANR RESCUE project and by the Labex ACTION project (contract ANR-11-LA BX-01-01). Computations were performed on the supercomputer facilities of the Mésocentre de calcul de Franche-Comté.— Besançon—France.
Author information
Authors and Affiliations
Corresponding author
Additional information
A preliminary version of this work was published in APDCM 2014.
Rights and permissions
About this article
Cite this article
Benoit, A., Coqblin, M., Nicod, JM. et al. Optimizing memory allocation for multistage scheduling including setup times. J Sched 19, 641–658 (2016). https://doi.org/10.1007/s10951-015-0437-x
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10951-015-0437-x