Aviso: para depositar documentos, por favor, inicia sesión e identifícate con tu cuenta de correo institucional de la UCM con el botón MI CUENTA UCM. No emplees la opción AUTENTICACIÓN CON CONTRASEÑA
 

Infraestructura de simulación para evaluación de estrategias de particionado de caché en procesadores equipados con la tecnología Intel RDT

Loading...
Thumbnail Image

Official URL

Full text at PDC

Publication date

2019

Editors

Journal Title

Journal ISSN

Volume Title

Publisher

Citations
Google Scholar

Citation

Abstract

Los procesadores multicore constituyen el tipo de arquitectura más extendida en la actualidad, y están presentes en un amplio espectro de plataformas, desde sistemas de alto rendimiento a dispositivos móviles de bajo consumo. A pesar de sus beneficios, la contención que se produce cuando varias aplicaciones compiten por el uso de recursos compartidos del sistema, como el último nivel de caché (Last-Level Cache - LLC) o el ancho de banda con memoria principal, puede ocasionar una degradación sustancial de métricas clave del sistema como el rendimiento global o la justicia. Se ha demostrado que la utilización de técnicas de particionado de caché (aplicadas a la LLC) resulta efectiva para mitigar los efectos de la contención por recursos compartidos. Gracias a ciertas tecnologías recientemente adoptadas en procesadores comerciales –como Intel Resource Director Technology (RDT)— , hoy en día es posible implementar estrategias de particionado de caché en el sistema operativo, transladando de forma transparente los beneficios del particionado de caché asistido por hardware directamente a las aplicaciones. En este Trabajo Fin de Máster se ha creado una infraestructura para asistir a los investigadores en el diseño y evaluación de técnicas de particionado de caché sobre procesadores equipados con la tecnología Intel RDT. La infraestructura desarrollada consta de dos componentes. El primer componente es un conjunto de extensiones realizadas en la herramienta de monitorización del rendimiento PMCTrack para explotar la funcionalidad proporcionada por las distintas tecnologías que conforman Intel RDT. Gracias a este soporte, implementado a nivel de kernel en Linux, es posible obtener información del uso de los recursos compartidos por parte de distintas aplicaciones, y aplicar particionado de caché tanto desde espacio de usuario como desde el propio sistema operativo. El segundo componente de nuestra infraestructura es un simulador de particionado de caché que permite comparar fácilmente la efectividad de diferentes algoritmos de particionado de caché con la solución óptima para distintos objetivos de optimización. El simulador –que recibe como entrada información de las aplicaciones recabada offline usando el nuevo soporte desarrollado en PMCTrack,– está equipado con un modelo de predicción de la degradación del rendimiento de las aplicaciones que tiene en cuenta el impacto de la contención en la LLC y el causado por la competencia entre aplicaciones por el uso del ancho de banda con memoria. Para determinar la solución óptima, el simulador cuenta con un algoritmo paralelo de ramificación y poda diseñado específicamente para distribuir el cómputo de forma eficiente entre múltiples cores.
Multicore processors are the most widespread type of architecture today, and are present on a broad spectrum of platforms, from high-performance systems to low-power mobile devices. Despite their benefits, the contention that occurs when multiple applications compete for shared system resources, such as the last-level cache (LLC) or main memory bandwidth, can result in substantial degradation of key system metrics such as overall performance or fairness. The use of cache partitioning techniques (applied to the LLC) has been shown to be effective in mitigating the effects of shared resource contention. Thanks to certain technologies recently adopted in commercial processors –such as Intel Resource Director Technology (RDT)–, it is now possible to implement cache partitioning strategies in the operating system, transparently translating the benefits of hardware-assisted cache partitioning directly to applications. In this Masters’ Thesis, a framework has been created to assist researchers in the design and evaluation of cache partitioning techniques on processors equipped with Intel RDT technology. The developed framework consists of two components. The first component is a set of extensions made in the performance monitoring tool PMCTrack, to exploit the functionality provided by the different technologies that make up Intel RDT. Thanks to this support, implemented at kernel level in Linux, it is possible to obtain information on the use of shared resources by different applications, and apply cache partitioning both from user space and from the operating system itself. The second component of our framework is a cache partitioning simulator that allows you to easily compare the effectiveness of different cache partitioning algorithms with the optimal solution for different optimization purposes. The simulator –which receives information from applications collected offline using the new support developed in PMCTrack– is equipped with a prediction model of application performance degradation that takes into account the impact of contention on the LLC caused by competition between applications for the use of memory bandwidth. To determine the optimal solution, the simulator features a parallel branch and bound algorithm specifically designed to efficiently distribute the computation across multiple cores.

Research Projects

Organizational Units

Journal Issue

Description

Trabajo de Fin de Máster, Universidad Complutense, Facultad de Informática, Departamento de Arquitectura de Computadores y Automática, Curso 2018/2019

Unesco subjects

Keywords