Multi-stage benders decomposition for optimizing multicore architectures

  • Authors:
  • Luca Benini;Michele Lombardi;Marco Mantovani;Michela Milano;Martino Ruggiero

  • Affiliations:
  • DEIS, University of Bologna, Bologna, Italy;DEIS, University of Bologna, Bologna, Italy;DEIS, University of Bologna, Bologna, Italy;DEIS, University of Bologna, Bologna, Italy;DEIS, University of Bologna, Bologna, Italy

  • Venue:
  • CPAIOR'08 Proceedings of the 5th international conference on Integration of AI and OR techniques in constraint programming for combinatorial optimization problems
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

Software optimization for multicore architectures is one of the most critical challenges in today's high-end computing. In this paper we focus on a well-known multicore platform, namely the Cell BE processor, and we address the problem of allocating and scheduling its processors, communication channels and memories, with the goal of minimizing application execution time. We have developed a complete optimization strategy based on Benders' decomposition. Unfortunately, a traditional two-stage decomposition produces unbalanced components: the allocation part is difficult, while the scheduling part is much easier. To address this issue, we have developed a multi-stage decomposition, which is a recursive application of standard Logic based Benders' Decomposition (LBD). Our experiments demonstrate that this approach is very effective in obtaining balanced sub-problems and in reducing the runtime of the optimizer.