Optimal task assignment in multithreaded processors: a statistical approach

  • Authors:
  • Petar Radojković;Vladimir Čakarević;Miquel Moretó;Javier Verdú;Alex Pajuelo;Francisco J. Cazorla;Mario Nemirovsky;Mateo Valero

  • Affiliations:
  • Barcelona Supercomputing Center, Barcelona, Spain;Barcelona Supercomputing Center, Barcelona, Spain;Universitat Politecnica de Catalunya & Barcelona Supercomputing Center, Barcelona, Spain;Universitat Politecnica de Catalunya, Barcelona, Spain;Universitat Politecnica de Catalunya, Barcelona, Spain;Barcelona Supercomputing Center & Spanish National Research Council (IIIA-CSIC), Barcelona, Spain;ICREA Research Professor at Barcelona Supercomputing Center, Barcelona, Spain;Barcelona Supercomputing Center & Universitat Politecnica de Catalunya, Barcelona, Spain

  • Venue:
  • ASPLOS XVII Proceedings of the seventeenth international conference on Architectural Support for Programming Languages and Operating Systems
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

The introduction of massively multithreaded (MMT) processors, comprised of a large number of cores with many shared resources, has made task scheduling, in particular task to hardware thread assignment, one of the most promising ways to improve system performance. However, finding an optimal task assignment for a workload running on MMT processors is an NP-complete problem. Due to the fact that the performance of the best possible task assignment is unknown, the room for improvement of current task-assignment algorithms cannot be determined. This is a major problem for the industry because it could lead to: (1)~A waste of resources if excessive effort is devoted to improving a task assignment algorithm that already provides a performance that is close to the optimal one, or (2)~significant performance loss if insufficient effort is devoted to improving poorly-performing task assignment algorithms. In this paper, we present a method based on Extreme Value Theory that allows the prediction of the performance of the optimal task assignment in MMT processors. We further show that executing a sample of several hundred or several thousand random task assignments is enough to obtain, with very high confidence, an assignment with a performance that is close to the optimal one. We validate our method with an industrial case study for a set of multithreaded network applications running on an UltraSPARC~T2 processor.