Data sharing conscious scheduling for multi-threaded applications on SMP machines

  • Authors:
  • Shlomit S. Pinter;Marcel Zalmanovici

  • Affiliations:
  • IBM Haifa Research Lab, Haifa University, Haifa, Israel;IBM Haifa Research Lab, Haifa University, Haifa, Israel

  • Venue:
  • Euro-Par'06 Proceedings of the 12th international conference on Parallel Processing
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

Extensive use of multi-threaded applications that run on SMP mac hines, justifies modifications in thread scheduling algorithms to consider threads' characteristics in order to improve performance. Current schedulers (e.g. in Linux, AIX) avoid migrating tasks between CPUs unless absolutely necessary. Unwarranted data cache misses occur when tasks that share data run on different CPUs, or are far apart time-wise on the same CPU. This work presents an extension to the Linux scheduler that exploits inter-task data relat ions to reduce data cache misses in multi-threaded applications running on SMP platforms, thus improving runtime, memory throughput, and energy consumpt ion. Our approach schedules the tasks to the CPU that holds the relevant data rather than to the one with highest affinity. We observed improve ments in CPU time and throughput on several benchmarks. For the Chat benchmark, the improvement in CPU time and cache misses is over 30% on average.