Extensión del modelo Roofline y herramientas para su uso

Los sistemas actuales pueden presentar complejas jerarquías de memoria y heterogeneidad a nivel de memorias, núcleos y procesadores. Como consecuencia, su programación eficiente es un reto. Un modelo de caracterización de rendimiento, que ofrezca directrices e información sobre la ejecución de un código, es util para la comprensión del comportamiento del mismo. En este artículo se presenta un nuevo modelo diseñado como una extensión del conocido Berkeley Roofline Model. Nuestro objetivo ha sido incluir información que tenga en cuenta las complejidades de múltiples núcleos y sistemas heterogéneos, y así entender su influencia sobre un código cuando se ejecuta en un sistema particular. Las características incorporadas al modelo básico son: su carácter dinámico, la posibilidad de analizar cada thread individualmente y la incorporación de un nuevo parámetro, la latencia de acceso a memoria. Se han implementado una serie de herramientas para obtener y representar este modelo de manera amigable

keywords: