PMCTrack: Delivering performance monitoring counter support to the OS scheduler

Hardware performance monitoring counters (PMCs) have proven effective in characterizing application performance. Because PMCs can only be accessed directly at the OS privilege level, kernellevel tools must be developed to enable the end-user and userspace programs to access PMCs. A large body of wor...

Descripción completa

Guardado en:
Detalles Bibliográficos
Autores principales: Saez, J. C., Pousa, Adrián, Rodríguez Rodríguez, R., Castro, F., Prieto Matías, M.
Formato: Articulo
Lenguaje:Inglés
Publicado: 2017
Materias:
Acceso en línea:http://sedici.unlp.edu.ar/handle/10915/87680
Aporte de:
id I19-R120-10915-87680
record_format dspace
institution Universidad Nacional de La Plata
institution_str I-19
repository_str R-120
collection SEDICI (UNLP)
language Inglés
topic Informática
Asymmetric multicore
Cache monitoring
Energy efficiency
Intel CMT
Linux kernel
OS scheduling
Performance monitoring counters
PMCTrack
spellingShingle Informática
Asymmetric multicore
Cache monitoring
Energy efficiency
Intel CMT
Linux kernel
OS scheduling
Performance monitoring counters
PMCTrack
Saez, J. C.
Pousa, Adrián
Rodríguez Rodríguez, R.
Castro, F.
Prieto Matías, M.
PMCTrack: Delivering performance monitoring counter support to the OS scheduler
topic_facet Informática
Asymmetric multicore
Cache monitoring
Energy efficiency
Intel CMT
Linux kernel
OS scheduling
Performance monitoring counters
PMCTrack
description Hardware performance monitoring counters (PMCs) have proven effective in characterizing application performance. Because PMCs can only be accessed directly at the OS privilege level, kernellevel tools must be developed to enable the end-user and userspace programs to access PMCs. A large body of work has demonstrated that the OS can perform effective runtime optimizations in multicore systems by leveraging performance-counter data. Special attention has been paid to optimizations in the OS scheduler. While existing performance monitoring tools greatly simplify the collection of PMC application data from userspace, they do not provide an architecture-agnostic kernel-level mechanism that is capable of exposing high-level PMC metrics to OS components, such as the scheduler. As a result, the implementation of PMC-based OS scheduling schemes is typically tied to specific processor models. To address this shortcoming we present PMCTrack, a novel tool for the Linux kernel that provides a simple architecture-independent mechanism that makes it possible for the OS scheduler to access per-thread PMC data. Despite being an OSoriented tool, PMCTrack still allows the gathering of monitoring data from userspace, enabling kernel developers to carry out the necessary offline analysis and debugging to assist them during the scheduler design process. In addition, the tool provides both the OS and the user-space PMCTrack components with other insightful metrics available in modern processors and which are not directly exposed as PMCs, such as cache occupancy or energy consumption. This information is also of great value when it comes to analyzing the potential benefits of novel scheduling policies on real systems. In this paper, we analyze different case studies that demonstrate the flexibility, simplicity and powerful features of PMCTrack.
format Articulo
Articulo
author Saez, J. C.
Pousa, Adrián
Rodríguez Rodríguez, R.
Castro, F.
Prieto Matías, M.
author_facet Saez, J. C.
Pousa, Adrián
Rodríguez Rodríguez, R.
Castro, F.
Prieto Matías, M.
author_sort Saez, J. C.
title PMCTrack: Delivering performance monitoring counter support to the OS scheduler
title_short PMCTrack: Delivering performance monitoring counter support to the OS scheduler
title_full PMCTrack: Delivering performance monitoring counter support to the OS scheduler
title_fullStr PMCTrack: Delivering performance monitoring counter support to the OS scheduler
title_full_unstemmed PMCTrack: Delivering performance monitoring counter support to the OS scheduler
title_sort pmctrack: delivering performance monitoring counter support to the os scheduler
publishDate 2017
url http://sedici.unlp.edu.ar/handle/10915/87680
work_keys_str_mv AT saezjc pmctrackdeliveringperformancemonitoringcountersupporttotheosscheduler
AT pousaadrian pmctrackdeliveringperformancemonitoringcountersupporttotheosscheduler
AT rodriguezrodriguezr pmctrackdeliveringperformancemonitoringcountersupporttotheosscheduler
AT castrof pmctrackdeliveringperformancemonitoringcountersupporttotheosscheduler
AT prietomatiasm pmctrackdeliveringperformancemonitoringcountersupporttotheosscheduler
bdutipo_str Repositorios
_version_ 1764820489286451203