Multi-criteria optimization for mapping programs to multi-processors

Finding tradeoffs in design space is naturally formulated as a multicriteria optimization problem. In this paper, we model tradeoffs between communication cost and the balance of processor workloads for the problem of mapping applications to processors in a multicore environment. We formulate several query strategies for finding Pareto optimal and approximately Pareto optimal solutions to the mapping problem using a constraint solver as a time-bounded oracle. Each of the strategies directs the oracle through the search space in a different manner. We evaluate the efficiency of these strategies on a series of synthetic benchmarks, and on two industrial applications, a video noise reduction, and an image demosaic color filtering. The results indicate a significant tradeoff between precision and computation time, and a corresponding benefit to time-bounded queries.

[1]  Bruno Dutertre,et al.  A Fast Linear-Arithmetic Solver for DPLL(T) , 2006, CAV.

[2]  John M. Libert,et al.  Mosquito noise in MPEG-compressed video: test patterns and metrics , 2000, Electronic Imaging.

[3]  Oded Maler,et al.  Approximating the Pareto Front of Multi-criteria Optimization Problems , 2010, TACAS.

[4]  Nikolaj Bjørner,et al.  Z3: An Efficient SMT Solver , 2008, TACAS.

[5]  Donald W. Loveland,et al.  A machine program for theorem-proving , 2011, CACM.

[6]  E.A. Lee,et al.  Synchronous data flow , 1987, Proceedings of the IEEE.

[7]  Lothar Thiele,et al.  Multi-criteria decision making in embedded system design , 2006 .

[8]  Francesco Poletti,et al.  Communication-aware allocation and scheduling framework for stream-oriented multi-processor systems-on-chip , 2006, Proceedings of the Design Automation & Test in Europe Conference.

[9]  Thomas Stützle,et al.  Stochastic Local Search: Foundations & Applications , 2004 .

[10]  Luca Benini,et al.  Allocation and Scheduling for MPSoCs via decomposition and no-good generation , 2005, IJCAI.

[11]  Xue Liu,et al.  Efficient SAT-Based Mapping and Scheduling of Homogeneous Synchronous Dataflow Graphs for Throughput Optimization , 2008, 2008 Real-Time Systems Symposium.

[12]  Armin Bender MILP based task mapping for heterogeneous multiprocessor systems , 1996, Proceedings EURO-DAC '96. European Design Automation Conference with EURO-VHDL '96 and Exhibition.

[13]  Oded Maler,et al.  Meeting Deadlines Cheaply , 2011, 2011 23rd Euromicro Conference on Real-Time Systems.

[14]  Andy D. Pimentel,et al.  A multiobjective optimization model for exploring multiprocessor mappings of process networks , 2003, First IEEE/ACM/IFIP International Conference on Hardware/ Software Codesign and Systems Synthesis (IEEE Cat. No.03TH8721).

[15]  Martin Lukasiewycz,et al.  Improving system level design space exploration by incorporating SAT-solvers into multi-objective evolutionary algorithms , 2006, IEEE Computer Society Annual Symposium on Emerging VLSI Technologies and Architectures (ISVLSI'06).

[16]  M. Coppola,et al.  Spidergon: a novel on-chip communication network , 2004, 2004 International Symposium on System-on-Chip, 2004. Proceedings..

[17]  Pierre G. Paulin,et al.  Optimizing Configuration and Application Mapping for MPSoC Architectures , 2009, 2009 NASA/ESA Conference on Adaptive Hardware and Systems.

[18]  Sharad Malik,et al.  The Quest for Efficient Boolean Satisfiability Solvers , 2002, CAV.

[19]  R. K. Ursem Multi-objective Optimization using Evolutionary Algorithms , 2009 .

[20]  Pat Hanrahan,et al.  Brook for GPUs: stream computing on graphics hardware , 2004, SIGGRAPH 2004.

[21]  Xin Zhao,et al.  An ILP formulation for task mapping and scheduling on multi-core architectures , 2009, 2009 Design, Automation & Test in Europe Conference & Exhibition.

[22]  William Thies,et al.  StreamIt: A Language for Streaming Applications , 2002, CC.

[23]  Lothar Thiele,et al.  Quality Assessment of Pareto Set Approximations , 2008, Multiobjective Optimization.

[24]  Jasbir S. Arora,et al.  Survey of multi-objective optimization methods for engineering , 2004 .

[25]  Marco Laumanns,et al.  SPEA2: Improving the Strength Pareto Evolutionary Algorithm For Multiobjective Optimization , 2002 .

[26]  Matthias Ehrgott,et al.  Multicriteria Optimization , 2005 .

[27]  Lothar Thiele,et al.  Mapping Applications to Tiled Multiprocessor Embedded Systems , 2007, Seventh International Conference on Application of Concurrency to System Design (ACSD 2007).

[28]  Lothar Thiele,et al.  Multiobjective evolutionary algorithms: a comparative case study and the strength Pareto approach , 1999, IEEE Trans. Evol. Comput..

[29]  Wayne H. Wolf,et al.  TGFF: task graphs for free , 1998, Proceedings of the Sixth International Workshop on Hardware/Software Codesign. (CODES/CASHE'98).