Optimal Multicore Scheduling: An Application of ASP Techniques

  • Viren Kumar
  • James Delgrande
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5753)


Optimal scheduling policies for multicore platforms have been the holy grail of systems programming for almost a decade now. In this paper, we take two instances of the optimal multicore scheduling problem, the dual-core and the quad-core instances, and attempt to solve them using Answer Set Programming. We represent the problem using a graph theoretic formulation, whereby finding the minimum edge cover of a weighted graph aids us in finding an optimal multicore schedule. We then use an answer set solver to obtain answer sets of varying sizes for our formulation. While a polynomial time algorithm for finding the minimum edge cover of a weighted graph exists in imperative languages and is suitable for dual-core processors, our approach uses ASP techniques to solve both the dual-core and quad-core versions of this problem. We discuss some optimizations to reduce execution runtime, and conclude by discussing potential uses of our application.


ASP clingo multicore scheduling edge cover 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
  2. 2.
    Edmonds, J.: Paths, Trees and Flowers. Canada J. Math. 17, 449–467 (1965)MathSciNetCrossRefMATHGoogle Scholar
  3. 3.
  4. 4.
  5. 5.
    Tam, D., Azimi, R., Soares, L., Stumm, M.: Managing Shared L2 Caches on Multicore Systems in Software. In: WIOSCA (June 2007); held in conjunction with the (ISCA) (2007)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Viren Kumar
    • 1
  • James Delgrande
    • 1
  1. 1.Simon Fraser UniversityBurnabyCanada

Personalised recommendations