LBMA and IMAR2: Weighted lottery based migration strategies for NUMA multiprocessing servers

Multicore NUMA systems present on-board memory hierarchies and communication networks that influence performance when executing shared memory parallel codes. Characterizing this influence is complex, and understanding the effect of particular hardware configurations on different codes is of paramoun...

Descripción completa

Detalles Bibliográficos
Autores: Laso Rodríguez, Rubén, García Lorenzo, Óscar, Fernández Rivera, Francisco, Cabaleiro Domínguez, José Carlos, Fernández Pena, Anselmo Tomás, Lorenzo del Castillo, Juan Ángel
Tipo de recurso: artículo
Fecha de publicación:2021
País:España
Institución:Universidad de Santiago de Compostela (USC)
Repositorio:Minerva. Repositorio Institucional de la Universidad de Santiago de Compostela
Idioma:inglés
OAI Identifier:oai:minerva.usc.gal:10347/38988
Acceso en línea:https://hdl.handle.net/10347/38988
Access Level:acceso abierto
Palabra clave:Hardware counters
Performance
Roofline model
Thread migration
Descripción
Sumario:Multicore NUMA systems present on-board memory hierarchies and communication networks that influence performance when executing shared memory parallel codes. Characterizing this influence is complex, and understanding the effect of particular hardware configurations on different codes is of paramount importance. In this article, monitoring information extracted from hardware counters at runtime is used to characterize the behavior of each thread for an arbitrary number of multithreaded processes running in a multiprocessing environment. This characterization is given in terms of number of operations per second, operational intensity, and latency of memory accesses. We propose a runtime tool, executed in user space, that uses this information to guide two different thread migration strategies for improving execution efficiency by increasing locality and affinity without requiring any modification in the running codes. Different configurations of NAS Parallel OpenMP benchmarks running concurrently on multicore NUMA systems were used to validate the benefits of our proposal, in which up to four processes are running simultaneously. In more than the 95% of the executions of our tool, results outperform those of the operating system (OS) and produces up to 38% improvement in execution time over the OS for heterogeneous workloads, under different and realistic locality and affinity scenarios.