Thread Isolation to Improve Symbiotic Scheduling on SMT Multicore Processors

[EN] Resource sharing is a critical issue in simultaneous multithreading (SMT) processors as threads running simultaneously on an SMT core compete for shared resources. Symbiotic job scheduling, which co-schedules applications with complementary resource demands, is an effective solution to maximize...

Full description

Bibliographic Details
Authors: Feliu-Pérez, Josué|||0000-0003-3017-4266, Sahuquillo Borrás, Julio|||0000-0001-8630-4846, Petit Martí, Salvador Vicente|||0000-0003-2426-4134, Eeckhout, Lieven
Format: article
Publication Date:2020
Country:España
Institution:Universitat Politècnica de València (UPV)
Repository:RiuNet. Repositorio Institucional de la Universitat Politécnica de Valéncia
Language:English
OAI Identifier:oai:riunet.upv.es:10251/168879
Online Access:https://riunet.upv.es/handle/10251/168879
Access Level:Open access
Keyword:Schedules
Message systems
Symbiosis
Program processors
Degradation
Resource management
Throughput
Simultaneous multithreading (SMT)
Symbiotic job scheduling
Thread isolation
ARQUITECTURA Y TECNOLOGIA DE COMPUTADORES
Description
Summary:[EN] Resource sharing is a critical issue in simultaneous multithreading (SMT) processors as threads running simultaneously on an SMT core compete for shared resources. Symbiotic job scheduling, which co-schedules applications with complementary resource demands, is an effective solution to maximize hardware utilization and improve overall system performance. However, symbiotic job scheduling typically distributes threads evenly among cores, i.e., all cores get assigned the same number of threads, which we find to lead to sub-optimal performance. In this paper, we show that asymmetric schedules (i.e., schedules that assign a different number of threads to each SMT core) can significantly improve performance compared to symmetric schedules. To leverage this finding, we propose thread isolation, a technique that turns symmetric schedules into asymmetric ones yielding higher overall system performance. Thread isolation identifies SMT-adverse applications and schedules them in isolation on a dedicated core to mitigate their sharp performance degradation under SMT. Our experimental results on an IBM POWER8 processor show that thread isolation improves system throughput by up to 5.5 percent compared to a state-of-the-art symmetric symbiotic job scheduler.