Classification, Customization, and Characterization: Using MILP for Task Allocation and Scheduling

Task allocation and scheduling for heterogeneous multicore platforms must be automated for such platforms to be successful. Techniques such as Mixed Integer Linear Programming (MILP) provide the ability to easily customize the allocation and scheduling problem to application or platform-specific peculiarities. The representation of the core problem in a MILP form has a large impact on the solution time required. In this paper, we investigate a variety of such representations and propose a taxonomy for them. A promising representation is chosen with extensive computational characterization. The MILP formulation is customized for a multimedia case study involving the deployment of a Motion JPEG encoder application onto a Xilinx Virtex II Pro FPGA platform. We demonstrate that our approach can produce solutions that are competitive with manual designs.

[1]  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.

[2]  Alok N. Choudhary,et al.  A system-level synthesis algorithm with guaranteed solution quality , 2000, DATE '00.

[3]  Aravind Srinivasan,et al.  Scheduling on Unrelated Machines under Tree-Like Precedence Constraints , 2005, Algorithmica.

[4]  Y.-K. Kwok,et al.  Static scheduling algorithms for allocating directed task graphs to multiprocessors , 1999, CSUR.

[5]  E.A. Lee,et al.  A comparison of synchronous and cycle-static dataflow , 1995, Conference Record of The Twenty-Ninth Asilomar Conference on Signals, Systems and Computers.

[6]  Nenad Mladenović,et al.  Mathematical Programming-Based Approach to Scheduling of Communicating Tasks , 2004 .

[7]  Werner Grass,et al.  Improved constraints for multiprocessor system scheduling , 2002, Proceedings 2002 Design, Automation and Test in Europe Conference and Exhibition.

[8]  E.L. Lawler,et al.  Optimization and Approximation in Deterministic Sequencing and Scheduling: a Survey , 1977 .

[9]  Jan Karel Lenstra,et al.  Approximation algorithms for scheduling unrelated parallel machines , 1987, 28th Annual Symposium on Foundations of Computer Science (sfcs 1987).

[10]  Mark F. Tompkins Optimization Techniques for Task Allocation and Scheduling in Distributed Multi-Agent Operations , 2003 .

[11]  Pierluigi Crescenzi,et al.  A compendium of NP optimization problems , 1994, WWW Spring 1994.

[12]  Jason Cong,et al.  xPilot: A Platform-Based Behavioral Synthesis System , 2005 .

[13]  Celso C. Ribeiro,et al.  Multiprocessor scheduling under precedence constraints: Polyhedral results , 2006, Discret. Appl. Math..

[14]  Éva Tardos,et al.  Scheduling unrelated machines with costs , 1993, SODA '93.

[15]  Brian W. Kernighan,et al.  AMPL: A Modeling Language for Mathematical Programming , 1993 .

[16]  Alice C. Parker,et al.  SOS: Synthesis of application-specific heterogeneous multiprocessor systems , 2001, J. Parallel Distributed Comput..

[17]  Celso C. Ribeiro,et al.  A new formulation for scheduling unrelated processor under precedence constraints , 1999, RAIRO Oper. Res..

[18]  K WallaceGregory The JPEG still picture compression standard , 1991 .

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