Title :
Phase-guided thread-to-core assignment for improved utilization of performance-asymmetric multi-core processors
Author :
Sondag, Tyler ; Rajan, Hridesh
Author_Institution :
Dept. of Comput. Sci., Iowa State Univ., Ames, IA
Abstract :
CPU vendors are starting to explore trade offs between die size, number of cores on a die, and power consumption leading to performance asymmetry among cores on a single chip. For efficient utilization of these performance-asymmetric multi-core processors, application threads must be assigned to cores such that the resource needs of a thread closely matches resource availability at the assigned core. This significantly complicates the task of an average programmer. The contribution of this work is a technique for automatically determining the mapping between threads and performance-asymmetric cores of a processor. Our approach, which we call phase-guided thread-to-core assignment, builds on a well-known insight that programs exhibit phase behavior. We first take code sections and group them into clusters such that each section in a cluster is likely to exhibit similar runtime characteristics. The key idea is that with this clustering, characteristics of a small number of representative sections in a cluster give insight into the behavior of the entire cluster. Thus the exhibited characteristics of the representative sections on different types of cores can be used for automating thread-to-core assignment at a lower runtime cost. Variations of our technique show up to an average 150% improvement in throughput over the stock Linux scheduler for systems with a constant feed of jobs, while maintaining comparable fairness and efficiency.
Keywords :
Linux; multiprocessing systems; scheduling; Linux scheduler; application threads; performance asymmetry; performance-asymmetric multicore processors; phase-guided thread-to-core assignment; Availability; Costs; Energy consumption; Feeds; Linux; Multicore processing; Programming profession; Runtime; Throughput; Yarn;
Conference_Titel :
Multicore Software Engineering, 2009. IWMSE '09. ICSE Workshop on
Conference_Location :
Vancouver, BC
Print_ISBN :
978-1-4244-3718-4
DOI :
10.1109/IWMSE.2009.5071386