Abstract
The development of efficient methods for mapping applications on heterogeneous multicore platforms is a key issue in the field of embedded systems. In this article, a novel approach based on the Logic-Based Benders decomposition principle is introduced for mapping complex applications on these platforms, aiming at optimizing their execution time. To provide optimal solutions for this problem in a short time, a new hybrid model that combines Integer Linear Programming (ILP) and Constraint Programming (CP) models is introduced. Also, to reduce the complexity of the model and its solution time, a set of novel techniques for generating additional constraints called Benders cuts is proposed. An extensive set of experiments has been performed in which synthetic applications described by Directed Acyclic Graphs (DAGs) were mapped to a number of heterogeneous multicore platforms. Moreover, experiments with DAGs that correspond to two real-life applications have also been performed. Based on the experimental results, it is proven that the proposed approach outperforms the pure ILP model in terms of the solution time and quality of the solution. Specifically, the proposed approach is able to find an optimal solution within a time limit of 2 hours in the vast majority of performed experiments, while the pure ILP model fails. Also, for the cases where both methods fail to find an optimal solution within the time limit, the solution of the proposed approach is systematically better than the solution of the ILP model.
- Ishfaq Ahmad and Yu-Kwong Kwok. 1998. On exploiting task duplication in parallel program scheduling. IEEE Trans. Parallel Distrib. Syst. 9, 9 (1998), 872--892. DOI:http://dx.doi.org/10.1109/71.722221 Google ScholarDigital Library
- Luca Benini, Michele Lombardi, Michela Milano, and Martino Ruggiero. 2010. Optimal resource allocation and scheduling for the CELL BE platform. Ann. Oper. Res. 184, 1 (February 2010), 51--77. DOI:http://dx. doi.org/10.1007/s10479-010-0718-xGoogle Scholar
- Luiz F. Bittencourt, Rizos Sakellariou, and Edmundo R. M. Madeira. 2010. DAG scheduling using a lookahead variant of the heterogeneous earliest finish time algorithm. In Proceedings of the 2010 18th Euromicro Conf. Parallel, Distrib. Network-based Process. 27--34. DOI:http://dx.doi.org/10.1109/PDP.2010.56 Google ScholarDigital Library
- Hadrien Cambazard, Pierre-Emmanuel Hladik, Anne-Marie Déplanche, Narendra Jussien, and Yvon Trinquet. 2004. Decomposition and learning for a hard real time task allocation problem. In Proceedings of the 10th International Conference (CP’04). 153--167. DOI:http://dx.doi.org/10.1007/978-3-540-30201-8_14Google ScholarDigital Library
- Louis-Claude Canon, Emmanuel Jeannot, Rizos Sakellariou, and Wei Zheng. 2008. Comparative evaluation of the robustness of DAG scheduling heuristics. Grid Comput. Achiev. Prospect. (2008), 73--84. DOI:http://dx.doi.org/10.1007/978-0-387-09457-1_7Google Scholar
- Thidapat Chantem, X. Sharon Hu, and Robert P. Dick. 2011. Temperature-aware scheduling and assignment for hard real-time applications on MPSoCs. IEEE Trans. Very Large Scale Integr. Syst. 19, 10 (2011), 1884--1897. DOI:http://dx.doi.org/10.1109/TVLSI.2010.2058873 Google ScholarDigital Library
- Junchul Choi, Hyunok Oh, Sungchan Kim, and Soonhoi Ha. 2012. Executing synchronous dataflow graphs on a SPM-based multicore architecture. In Proceedings of the 49th ACM/EDAC/IEEE Des. Autom. Conf. 664--971. DOI:http://dx.doi.org/10.1145/2228360.2228480 Google ScholarDigital Library
- Pablo E. Coll, Celso C. Ribeiro, and Cid C. Souza. 2006. Multiprocessor scheduling under precedence constraints: Polyhedral results. Discret. Appl. Math. 154, 1 (2006), 770--801. DOI:http://dx.doi.org/ 10.1016/j.dam.2004.07.009 Google ScholarDigital Library
- Daniel Cordes, Michael Engel, Olaf Neugebauer, and Peter Marwedel. 2013. Automatic extraction of pipeline parallelism for embedded heterogeneous multi-core platforms. In Proceedings of the International Conference on Compilers, Architecture and Synthesis for Embedded Systems (CASES’13). 1--10. DOI:http://dx.doi.org/ 10.1109/CASES.2013.6662508 Google ScholarDigital Library
- TECS DAGs. 2015. Data sets of Directed Acyclic Graphs. (2015).Google Scholar
- Andreas Emeretlis, George Theodoridis, Panayiotis Alefragis, and Nikolaos Voros. 2014. A hybrid ILP-CP model for mapping directed acyclic task graphs to multicore architectures. In IEEE International Parallel & Distributed Processing Symposium Workshops (IPDPSW’’14). 176--182. DOI:http://dx.doi.org/ 10.1109/IPDPSW.2014.24 Google ScholarDigital Library
- Fair Isaac Corporation FICO®. 2013. FICO Xpress Optimization Suite. Retrieved from http://www.fico.com/ en/products/fico-xpress-optimization-suite/.Google Scholar
- Milind Girkar and Constantine D. Polychronopoulos. 1994. The hierarchical task graph as a universal intermediate representation. Int. J. Parallel Program. 22, 5 (1994), 519--551. DOI:http://dx.doi.org/10.1007/ BF02577777 Google ScholarDigital Library
- Sachi Gupta, Vikas Kumar, and Gaurav Agarwal. 2010. Task scheduling in multiprocessor system using genetic algorithm. In Proceedings of the 2nd International Confence on Machine Learning and Computing. 267--271. DOI:http://dx.doi.org/10.1109/ICMLC.2010.50 Google ScholarDigital Library
- Pascal Van Hentenryck and Michela Milano. 2010. Hybrid Optimization: The Ten Years of CPAIOR. Springer.Google Scholar
- J. N. Hooker and G. Ottosson. 2003. Logic-based benders decomposition. Math. Program. 96, 1 (2003), 33--60. DOI:http://dx.doi.org/10.1007/s10107-003-0375-9Google ScholarCross Ref
- J. N. Hooker. 2007. Planning and scheduling by logic-based benders decomposition. Oper. Res. 55, 3 (2007), 588--602. DOI:http://dx.doi.org/10.1287/opre.1060.0371 Google ScholarDigital Library
- John N. Hooker. 2012. Integrated Methods for Optimization. Springer. Google ScholarDigital Library
- Jingcao Hu and Radu Marculescu. 2005. Energy- and performance-aware mapping for regular NoC architectures. IEEE Trans. Comput. Des. Integr. Circuits Syst. 24, 4 (2005), 551--562. DOI:http://dx.doi.org/ 10.1109/TCAD.2005.844106 Google ScholarDigital Library
- Olivera Jovanovic, Nils Kneuper, Michael Engel, and Peter Marwedel. 2012. ILP-based memory-aware mapping optimization for MPSoCs. In 15th IEEE International Conference on Computational Science and Engineering (CSE’12). 413--420. DOI:http://dx.doi.org/10.1109/ICCSE.2012.64 Google ScholarDigital Library
- Krzysztof Kuchcinski. 2003. Constraints-driven scheduling and resource assignment. ACM Trans. Des. Autom. Electron. Syst. 8, 3 (July 2003), 355--383. DOI:http://dx.doi.org/10.1145/785411.785416 Google ScholarDigital Library
- David G. Lowe. 2004. Distinctive image features from scale-invariant keypoints. Int. J. Comput. Vis. 60, 2 (2004), 91--110. DOI:http://dx.doi.org/10.1023/B:VISI.0000029664.99615.94 Google ScholarDigital Library
- Christos T. Maravelias. 2006. A decomposition framework for the scheduling of single- and multi-stage processes. Comput. Chem. Eng. 30, 3 (2006), 407--420. DOI:http://dx.doi.org/10.1016/j.compchemeng. 2005.09.011Google ScholarCross Ref
- Kevin Martin, Christophe Wolinski, Krzysztof Kuchcinski, Antoine Floch, and François Charot. 2012. Constraint programming approach to reconfigurable processor extension generation and application compilation. ACM Trans. Reconfigurable Technol. Syst. 5, 2 (June 2012), 1--38. DOI:http://dx.doi.org/10.1145/ 2209285.2209289 Google ScholarDigital Library
- George L. Nemhauser and Laurence A. Wolsey. 1999. Integer and Combinatorial Optimization. John Wiley & Sons.Google ScholarDigital Library
- Samantha Ranaweera and Dharma P. Agrawal. 2000. A task duplication based scheduling algorithm for heterogeneous systems. In Proc. 14th Int. Parallel Distrib. Process. Symp (IPDPS’00). 445--450. DOI:http://dx.doi.org/10.1109/IPDPS.2000.846020 Google ScholarDigital Library
- Francesca Rossi, Peter Van Beek, and Toby Walsh. 2006. Handbook of Constraint Programming. Elsevier Science. Google ScholarDigital Library
- Martino Ruggiero, Alessio Guerri, Davide Bertozzi, Michela Milano, and Luca Benini. 2007. A fast and accurate technique for mapping parallel applications on stream-oriented MPSoC platforms with communication awareness. Int. J. Parallel Program. 36, 1 (April 2007), 3--36. DOI:http://dx.doi.org/10.1007/s10766-007-0032-7 Google ScholarDigital Library
- Ruslan Sadykov and Laurence A. Wolsey. 2006. Integer programming and constraint programming in solving a multimachine assignment scheduling problem with deadlines and release dates. INFORMS J. Comput. 18, 2 (2006), 209--217. DOI:http://dx.doi.org/10.1287/ijoc.1040.0110 Google ScholarDigital Library
- O. L. Sathappan, P. Chitra, P. Venkatesh, and M. Prabhu. 2011. Modified genetic algorithm for multiobjective task scheduling on heterogeneous computing system. Int. J. Inf. Technol. Commun. Converg. 1, 2 (2011), 146--158. DOI:http://dx.doi.org/10.1504/IJITCC.2011.039282Google ScholarCross Ref
- Nadathur Satish, Kaushik Ravindran, and Kurt Keutzer. 2007. A decomposition-based constraint optimization approach for statically scheduling task graphs with communication delays to multiprocessors. In Proceedings of the 2007 Design Automation Test Europe Conference Exhibit. 1--6. DOI:http://dx.doi.org/10.1109/DATE.2007.364567 Google ScholarDigital Library
- Amit Kumar Singh, Muhammad Shafique, Akash Kumar, and Jörg Henkel. 2013. Mapping on multi many core systems: Survey of current and emerging trends. In 50th ACM/EDAC/IEEE Des. Autom. Conf. (DAC’ 13). 1--10. DOI:http://dx.doi.org/10.1145/2463209.2488734 Google ScholarDigital Library
- Oliver Sinnen. 2007. Task Scheduling for Parallel Systems. John Wiley & Sons. Google ScholarDigital Library
- Timo Stripf, Oliver Oey, Thomas Bruckschloegl, Juergen Becker, Gerard Rauwerda, Kim Sunesen, George Goulas, Panayiotis Alefragis, Nikolaos S. Voros, Steven Derrien, Olivier Sentieys, Nikolaos Kavvadias, Grigoris Dimitroulakos, Kostas Masselos, Dimitrios Kritharidis, Nikolaos Mitas, and Thomas Perschke. 2013. Compiling Scilab to high performance embedded multicore systems. Microprocess. Microsyst. 37, 8 (2013), 1033--1049. DOI:http://dx.doi.org/10.1016/j.micpro.2013.07.004 Google ScholarDigital Library
- Timo Stripf, Ralf Koenig, and Juergen Becker. 2012. A cycle-approximate, mixed-ISA simulator for the KAHRISMA architecture. In Proceedings of the 2012 Design, Automation & Test in Europe Conference & Exhibition (DATE’& Exhibition (DATE’’12). 21--26. DOI:http://dx.doi.org/10.1109/DATE.2012.6176426 Google ScholarDigital Library
- George Theodoridis, Nikolaos Vassiliadis, and Spyridon Nikolaidis. 2009. An integer linear programming model for mapping applications on hybrid systems. IET Comput. Digit. Tech. 3, 1 (2009), 33--42. DOI:http://dx.doi.org/10.1049/iet-cdt:20080003Google ScholarCross Ref
- Lothar Thiele, Iuliana Bacivarov, Wolfgang Haid, and Kai Huang. 2007. Mapping applications to tiled multiprocessor embedded systems. In Proceedings of the 7th International Conference on Application of Concurrency to System Design (ACSD’07). 29--40. DOI:http://dx.doi.org/10.1109/ACSD.2007.53 Google ScholarDigital Library
- Haluk Topcuoglu, Salim Hariri, and Min-You Wu. 2002. Performance-effective and low-complexity task scheduling for heterogeneous computing. IEEE Trans. Parallel Distrib. Syst. 1, 3 (2002), 260--274. DOI:http://dx.doi.org/10.1109/71.993206 Google ScholarDigital Library
Index Terms
- A Logic-Based Benders Decomposition Approach for Mapping Applications on Heterogeneous Multicore Platforms
Recommendations
Static Mapping of Applications on Heterogeneous Multi-Core Platforms Combining Logic-Based Benders Decomposition with Integer Linear Programming
The proper mapping of an application on a multi-core platform and the scheduling of its tasks are key elements to achieve the maximum performance. In this article, a novel hybrid approach based on integrating the Logic-Based Benders Decomposition (LBBD) ...
Planning and Scheduling by Logic-Based Benders Decomposition
We combine mixed-integer linear programming (MILP) and constraint programming (CP) to solve an important class of planning and scheduling problems. Tasks are allocated to facilities using MILP and scheduled using CP, and the two are linked via logic-...
Benders decomposition with integer subproblem
A Branch-and-Cut algorithm using Benders decomposition method is proposed.The algorithm is applied in case of integer subproblem.Local and Global Cuts are used to warm start the master problem in each node.The validity of the cuts is mathematically ...
Comments