skip to main content
research-article

Fast multidimension multichoice knapsack heuristic for MP-SoC runtime management

Published:05 May 2011Publication History
Skip Abstract Section

Abstract

Since the application complexity is growing and applications can be dynamically activated, the major challenge for heterogeneous multiprocessor platforms is to select at runtime an energy-efficient mapping of these applications. Taking into account that many different possible implementations per application can be available, and that the selection must meet the application deadlines under the available platform resources, this runtime optimization problem can be modeled as a Multidimension Multichoice Knapsack Problem (MMKP), which is known to be NP-hard. Not only algorithms for an optimal solution, but also state-of-the-art heuristics for real-time systems are still too slow for runtime management of multiprocessor platforms. This article provides a new fast and lightweight heuristic for finding near-optimal solutions for MMKP problems. The main contribution of this heuristic is: (i) the Pareto filtering of each initial MMKP set to reduce the search space, (ii) the sorting of all Pareto points together in a single two-dimension search space, where (iii) a very fast greedy algorithm solves the MMKP. Experiments show that our heuristic finds solutions close (within 0% to 0.4%) to the ones obtained by the fastest state-of-the-art heuristics, in just a fraction of the execution time (more than 97.5% gain on a StrongARM processor) and can run in less than 1ms for multiprocessor problem sizes. This is required for realistic OS reaction times in video and wireless application sets.

References

  1. Akbar, M., Manning, E., Shoja, G., and Khan, S. 2001. Heuristic solutions for the multiple-choice multiple-dimension knapsack problem. In Proceedings of the Conference on Computational Science. Springer, Berlin. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Akbar, M., Rahman, M., Kaykobad, M., Manning, E., and Shoja, G. 2006. Solving the multi-dimensional multiple-choice knapsack problem by constructing convex hulls. Comput. Oper. Res. 33, 5, 1259--1273.Google ScholarGoogle ScholarCross RefCross Ref
  3. Armstrong, R., Kung, D., Sinha, P., and Zoltners, A. 1983. A computational study of multiple-choice knapsack algorithm. ACM Trans. Math. Softw. 9, 184--198. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Bougard, B., Pollin, S., Lenoir, G., Van der Perre, L., Catthoor, F., and Dehaene, W. 2004. Transport level performance-energy trade-off in wireless networks and consequences on the system-level architecture and design paradigm. In Proceedings of the Workshop on Signal Processing Systems. IEEE, Los Alamitos, CA, 77--82.Google ScholarGoogle Scholar
  5. CERMSEM. 2004. Multi-choice multi-dimension knapsack problems. ftp://cermsem.univ-paris1.fr/pub/CERMSEM/hi_/MMKP/MMKP.html.Google ScholarGoogle Scholar
  6. Cormen, T., Leiserson, C., and Rivest, R. 1990. Introduction to Algorithms. MIT Press, Cambridge, MA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Dammeyer, F. and Voss, S. 1991. Dynamic tabu list management using the reverse elimination method. Ann. Oper. Res. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Drexel, A. 1988. A simulated annealing approach to the multi-constraint zero-one knapsack problem. Ann. Comput. 40, 1--8. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Khan, S. 1998. Quality adaptation in a multi-session adaptive multimedia system: Model and architecture. Ph.D. thesis, Department of Electrical and Computer Engineering, University of Victoria. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Khan, S., Li, K., and Manning, E. 1997. The utility model for adaptive multimedia systems. In Proceedings of the International Workshop on Multimedia Modeling. 111--126.Google ScholarGoogle Scholar
  11. Khan, S., Li, K., Manning, E., and Akbar, M. 2002. Solving the knapsack problem for adaptive multimedia system. Studia Informatica Universalis, 161--182.Google ScholarGoogle Scholar
  12. Khuri, S., Back, T., and Heitkotter, J. 1994. The zero/one multiple knapsack problem and genetic algorithms. InProceedings of the Symposium of Applied Computation. ACM, New York. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Koleser, P. 1967. A branch and bound algorithm for knapsack problem. Manage. Sci. 13, 723--735.Google ScholarGoogle Scholar
  14. Lee, C., Lehoczky, J., Siewiorek, D., Rajkumar, R., and Hansen, J. 1999. A scalable solution to the multi-resource QoS problem. In Proceedings of the Real-Time Systems Symposium. IEEE, Los Alamitos, CA, 315--326. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Mangharam, R., Pollin, S., Bougard, B., Rajkumar, R., Catthoor, F., Van der Perre, L., and Moerman, I. 2005. Optimal fixed and scalable energy management for wireless networks. In Proceedings of the Conference on Computer Communications. IEEE, Los Alamitos, CA.Google ScholarGoogle Scholar
  16. Martello, S. and Toth, P. 1990. Knapsack Problems: Algorithms and Computer Implementations. J. Wiley and Sons, Hoboken, NJ. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Maruyama, T., Takagi, M., and Hoshino, T. 1999. Hardware implementation techniques for recursive calls and loops. In Proceedings of the International Conference on Field Programmable Logic and Applications. IEEE, Los Alamitos, CA, 450--455. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. McVoy, L. W. and Staelin, C. 1996. lmbench: Portable tools for performance analysis. In Proceedings of the Annual Technical Conference. USENIX, Berkeley, CA, 279--294. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Mejia-Alvarez, P., Levner, E., and Mosse, D. 2002. Power-optimized scheduling server for real-time tasks. In Proceedings of the Real-Time and Embedded Technology and Applications Symposium. IEEE, Los Alamitos, CA, 239--250. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Moser, M., Jokanovic, D., and Shiratori, N. 1997. An algorithm for the multi-dimensional multiple-choice knapsack problem. IEICE Tran. Fundam. Electron. 80, 3, 582--589.Google ScholarGoogle Scholar
  21. Parra-Hernandez, R. and Dimopoulos, N. 2005. A new heuristic for solving the multi-choice multi-dimensional knapsack problem. IEEE Trans. Syst. Man Cybernetics Part A Syst. Humans 35, 5, 708--717. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Qin, W. and Malik, S. 2003. Flexible and formal modeling of micro-processors with application to retargetable simulation. In Proceedings of the Conference on Design, Automation and Test in Europe. IEEE, Los Alamitos, CA, 556--561. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Tachibana, T., Murata, Y., Shibata, N., Yasumoto, K., and Ito, M. 2006. Flexible implementation of genetic algorithms on fpgas. In Proceedings of the International Symposium on Field Programmable Gate Arrays. ACM, New York, 236. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Volder, J. E. 1959. The CORDIC trigonometric computing technique. IRE Trans. Electron. Comput. EC-8, 330--334.Google ScholarGoogle Scholar
  25. Yang, P. and Catthoor, F. 2003. Pareto-optimization-based run-time task scheduling for embedded systems. In Proceedings of the International Symposium on System Synthesis. IEEE, Los Alamitos, CA, 120--125. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Ykman-Couvreur, C., Brockmeyer, E., Nollet, V., Marescaux, T., Catthoor, F., and Corporaal, H. 2005. Design-time application exploration for MP-SoC customized run-time management. In Proceedings of the International Symposium on System-on-Chip. IEEE, Los Alamitos, CA, 66--73.Google ScholarGoogle Scholar
  27. Ykman-Couvreur, C., Nollet, V., Marescaux, T., Brockmeyer, E., Catthoor, F., and corporaal, H. 2006. Pareto-based application specification for MP-SoC customized run-time management. In Proceedings of the International Conference on Embedded Computer Systems: Architectures, Modeling, and Simulation. IEEE, Los Alamitos, CA, 78--84.Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. Fast multidimension multichoice knapsack heuristic for MP-SoC runtime management

      Recommendations

      Reviews

      Hamid R. Noori

      Knapsack problems are among the most intensely studied problems in combinatorial optimization. In this paper, Ykman-Couvreur et al. present "a new fast and lightweight heuristic for finding near-optimal solutions for [multidimension multichoice knapsack problems (MMKPs)]." The MMKP is a combination of the multidimension knapsack problem (where several resources are present, but only one set) and the multichoice knapsack problem (where several sets exist, but only one resource). Within this framework, the authors introduce a multiprocessor system-on-chip (MP-SoC) heuristic suitable for multiprocessor platforms, which they then challenge on both solution quality and performance, compared with the state-of-the-art heuristics. Although the discussed issue is very complex, the authors manage to find an optimal balance between a comprehensive presentation, in terms of a consistent thread and useful illustrations, and high mathematical accuracy. However, while this paper targets specialists in this area with an interest in efficient algorithms for solving MMKPs, it fails to attract mathematicians in other disciplines. Based on the remarkable advantages of the presented study, the paper is recommended to readers with further applications in mind. Online Computing Reviews Service

      Access critical reviews of Computing literature here

      Become a reviewer for Computing Reviews.

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader
      About Cookies On This Site

      We use cookies to ensure that we give you the best experience on our website.

      Learn more

      Got it!