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
 

Análisis del impacto del particionado de caché en el rendimiento de las aplicaciones multihilo

dc.contributor.advisorSáez Alcaide, Juan Carlos
dc.contributor.authorMartín Gómez, Daniel
dc.date.accessioned2024-11-18T16:36:02Z
dc.date.available2024-11-18T16:36:02Z
dc.date.issued2024
dc.degree.titleDoble Grado en Ingeniería Informática y Matemáticas
dc.descriptionTrabajo de Doble Grado en Ingeniería Informática y Matemáticas, Facultad de Informática UCM, Departamento de Arquitectura de Computadores y Automática, Curso 2023/2024.
dc.description.abstractMulticore processors constitute the main architecture choice for general purpose systems. Its worth noting that the different cores on a processor are not truly independent one from each other, as there are usually shared resources between cores, like some levels of cache (L2 or L3), memory access channels or the DRAM controller. The contention that naturally appears when multiple applications compete for the use of shared resources among cores may lead to substantial performance degradation, and have a negative impact on fairness. Moreover, the effect on contention is unevenly distributed between applications. Partitioning shared caches has been proven effective to mitigate shared-resourcecontention effects. Lately, the main chip manufacturers (Intel and AMD) have added cache partitioning hardware support to their commercial processors. Several research articles have been published on cache partitioning, using this hardware support to effectively achieve isolation between applications by allocating different partitions to different applications. However, in these strategies all threads of a multithreaded application are assigned to the same partition. In this work we have evaluated the potential benefit of cache partitioning at the thread level, when a multithreaded application runs alone on the system. To this end we have implemented tools for cache partitioning support on top of PMCSched, which integrates it into the Linux kernel, for two different platforms: One with L2 partitioning support and another with L3 partitioning support. Experiments and subsequent analysis have been conducted on these platforms using a wide range of applications, mainly HPC (High Performance Computing) benchmarks.
dc.description.abstractLos procesadores multinúcleo son actualmente la arquitectura dominante de propósito general. Cabe destacar que en este tipo de arquitecturas los distintos núcleos (cores) que integra el procesador no son procesadores totalmente independientes, ya que típicamente existen recursos compartidos entre cores, como ciertos niveles de caché (L2 o L3), los canales de acceso a memoria principal o el controlador de DRAM. El problema de tener estos recursos compartidos es que las aplicaciones que se ejecutan simultáneamente en el sistema compiten por el uso de los mismos, lo cual puede afectar al rendimiento de estas aplicaciones de forma desigual, provocando injusticia (unfairness) en el acceso a estos recursos, así como la degradación global del rendimiento del sistema. Una medida para mitigar los efectos negativos de la contención es el particionado de las cachés compartidas. Recientemente los principales fabricantes de hardware han introducido en sus procesadores comerciales (típicamente de gama alta), soporte hardware para particionar la caché desde el software del sistema. Hay numerosas propuestas de investigación que utilizan este soporte hardware de particionado de caché para garantizar aislamiento entre distintas aplicaciones, asignando distintas particiones a distintas aplicaciones. No obstante, en estas estrategias todos los hilos de una misma aplicación (multihilo) comparten la misma partición. En este trabajo se ha explorado el potencial derivado de particionar la caché entre los distintos hilos de una aplicación, en un escenario en el que la aplicación se ejecuta sola en el sistema. Para llevar a cabo nuestro análisis se ha implementado soporte en el kernel Linux para realizar particionado de caché automático (guiado por el sistema operativo) en dos plataformas distintas, una que soporta particionado para la caché L2 y otra para la caché L3. El análisis experimental se ha realizado utilizando un amplio rango de aplicaciones —principalmente HPC (High Performance Computing) — en dos procesadores de Intel, uno de ellos con microarquitectura Alder Lake yotro de la familia Intel Broadwell-EP.
dc.description.departmentDepto. de Arquitectura de Computadores y Automática
dc.description.facultyFac. de Informática
dc.description.refereedTRUE
dc.description.statusunpub
dc.identifier.urihttps://hdl.handle.net/20.500.14352/110733
dc.language.isoeng
dc.page.total86
dc.rightsAttribution-NonCommercial-NoDerivatives 4.0 Internationalen
dc.rights.accessRightsopen access
dc.rights.urihttp://creativecommons.org/licenses/by-nc-nd/4.0/
dc.subject.cdu004(043.3)
dc.subject.keywordKernel Linux
dc.subject.keywordHPC
dc.subject.keywordParticionado de caché
dc.subject.keywordIntel CAT
dc.subject.keywordContención de recursos
dc.subject.keywordPMCSched
dc.subject.keywordPMTrack
dc.subject.keywordIntel Alder Lake
dc.subject.keywordIntel Broadwell-EP
dc.subject.keywordCache partitioning
dc.subject.keywordResource contention
dc.subject.ucmInformática (Informática)
dc.subject.unesco33 Ciencias Tecnológicas
dc.titleAnálisis del impacto del particionado de caché en el rendimiento de las aplicaciones multihilo
dc.title.alternativeAnalyzing the impact of cache-partitioning in the performance of multithreaded applications
dc.typebachelor thesis
dc.type.hasVersionAM
dspace.entity.typePublication
relation.isAdvisorOfPublication5a9b186f-f010-47e3-b598-040d7f5dc5ba
relation.isAdvisorOfPublication.latestForDiscovery5a9b186f-f010-47e3-b598-040d7f5dc5ba

Download

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
Análisis_impacto_caché_rendimiento_aplicaciones_multihilo.pdf
Size:
8.34 MB
Format:
Adobe Portable Document Format