Keynotes

 

Alberto Ros

Universidad de Murcia, España

A Journey from Cache Coherence to Microarchitecture

La arquitectura de computadores ha evolucionado a lo largo de décadas de ingenio, equilibrando rendimiento, eficiencia y programabilidad. Aunque la inteligencia artificial acapara cada vez más la atención como posible solución universal, el diseño hardware y la investigación en microarquitectura siguen siendo la base sobre la que se construye el progreso de los procesadores actuales.

En esta charla reviso mi viaje en investigación explorando la interacción entre los sistemas de memoria y la microarquitectura. El recorrido comienza con cuestiones fundamentales sobre los protocolos de coherencia de caché para seguir con su estrecha relación con los modelos de consistencia de memoria. A partir de ahí, examino cómo la implementación hardware de estos modelos de consistencia influye en el diseño de las colas de carga y almacenamiento, para enlazar con mejoras en la microarquitectura de los procesadores y técnicas de ejecución especulativas. A través de esta retrospectiva, destaco cómo la investigación en arquitectura continúa revelando los principios que guían las siguientes generaciones de procesadores.

Biografía:

Alberto Ros es catedrático en el Departamento de Ingeniería y Tecnología de Computadores de la Universidad de Murcia, España. Tras recibir financiación del gobierno español para realizar sus estudios de doctorado, obtuvo el título de doctor en Informática por la Universidad de Murcia en 2009. Posteriormente, ocupó puestos posdoctorales en la Universitat Politècnica de València y en la Universidad de Uppsala. En 2018, recibió una subvención Consolidator Grant del Consejo Europeo de Investigación (ERC) para mejorar el rendimiento de las arquitecturas multinúcleo, y en 2024 obtuvo una subvención Proof of Concept del mismo organismo. Su trabajo se centra en la coherencia de caché, el diseño de jerarquías de memoria, la consistencia de memoria y la microarquitectura de procesadores, áreas en las que ha coautorizado más de 100 artículos revisados por pares. Ha sido incluido en el ISCA Hall of Fame y en el MICRO Hall of Fame, y es miembro sénior del IEEE.



Daniel Piso

ARM

La arquitectura de Arm: como trasladar ideas y conceptos a millones de dispositivos

La arquitectura de Arm es la piedra angular del mayor ecosistema de computación del planeta, compuesto por 325 mil millones de dispositivos. Abarca tres areas diferentes para el diseño de SoCs (System-on-Chip): ‘Arm CPU Architecture’, ‘Architecture Security Features’ y ‘Arm System Architectures’. La arquitectura CPU es una familia de ISAs (Instruction Set Architecture) definida como un estándar para la interacción hardware-software organizada en tres perfiles diferenciados A-profile (altas prestaciones), R-profile (tiempo real), M-profile (microcontroladores). El principio de interacción hardware-software garantiza la portabilidad de todo software que obedezca a los comportamientos abstractos definidos en la arquitectura.

En esta charla describiremos como la incorporación de nuevas características a la arquitectura posibilita la innovación tecnológica y la mejora continua de las prestaciones de los diferentes diseños. Este proceso requiere de un delicado balance entre distintos requerimientos, costes de implementación y desarrollo software, así como el alineamiento con las necesidades del mercado consiguiendo que una determinada solución sea factible en un rango amplio de microarquitecturas.

A medida que una arquitectura se desarrolla a lo largo de décadas, la especificación se convierte en un gran corpus de datos. El simple hecho de tener que proporcionar una definición consistente y correcta viene acompañada de una serie de retos tecnológicos que requiere del desarrollo de estándares y tecnologías que permiten el prototipado de ideas y la verificación del contenido. La calidad de dicho contenido es crucial para facilitar el consumo de la especificación (en muchos caos de manera automatizada) para minimizar el traslado de defectos a los diseños y minimizar los tiempos de implementación.

El desarrollo del Architecture Specification Language – ASL es un ejemplo exitoso para resolver a escala el problema de la especificación de una arquitectura. Estos son algunos de los ingredientes que en Arm creemos necesarios para que este despliegue de tecnología a gran escala haya sido posible.

Biografía:

Daniel Piso Fernández es Director de Ingeniería en el Architecture Technology Group (ATG) en Arm, donde lidera un equipo internacional de más de setenta profesionales distribuidos entre Cambridge, Austin, Bangalore. Su labor se centra en las especificaciones de arquitectura de Arm, el diseño de la estrategia tecnológica y la evolución del modelo operativo asociado a su publicación y consumo. Uno de los mayores exponentes de este trabajo es el Arm Architecture Reference Manual (Arm ARM), que contiene la especificación completa de la arquitectura de Arm para procesadores de alto rendimiento, y que en su última versión PDF roza las diecisiete mil páginas.

Con una trayectoria previa en el proyecto European Spallation Source, en el mundo de los aceleradores de partículas, donde creó y dirigió equipos multidisciplinares y gestionó proyectos tecnológicos a gran escala, Daniel acumula amplia experiencia en gestión organizativa, ingeniería de sistemas y desarrollo de hardware y software. Su formación científica —Doctor en Física por la Universidad de Santiago de Compostela y PostDoc en la George Mason University en Virginia, USA— complementa más de dos décadas de trabajo en arquitectura de computadores, diseño electrónico, control de sistemas y programación. Daniel se ha especializado en combinar liderazgo, innovación y una sólida base técnica para impulsar tecnologías complejas y transformar organizaciones.



Felix Wolf

Universidad Técnica de Darmstadt, Alemania

The Price Performance of Performance Models

Para comprender el comportamiento de escalado de las aplicaciones de HPC (Computación de Alto Rendimiento), los desarrolladores suelen utilizar modelos de rendimiento. Un modelo de rendimiento es una fórmula que expresa una métrica de rendimiento crítica, como el tiempo de ejecución, en función de uno o más parámetros de ejecución, como el número de núcleos y el tamaño de la entrada.

Los modelos de rendimiento ofrecen información rápida con un nivel muy alto de abstracción, incluyendo predicciones sobre el comportamiento futuro. Dada la complejidad de las aplicaciones actuales, que a menudo combinan varios algoritmos sofisticados, crear modelos de rendimiento manualmente resulta extremadamente laborioso.

El modelado de rendimiento empírico, que es el proceso de aprender tales modelos a partir de datos de rendimiento, ofrece una alternativa conveniente, pero conlleva su propio conjunto de desafíos. Los dos más destacados son el ruido y el costo de los experimentos necesarios para generar los datos subyacentes. En esta charla, revisaremos el estado del arte en el modelado de rendimiento empírico e investigaremos cómo podemos emplear el aprendizaje automático (machine learning) y otras estrategias para mejorar la calidad y reducir el costo de los modelos resultantes.

Biografía:

Felix Wolf es catedrático en el Departamento de Informática de la Universidad Técnica de Darmstadt en Alemania, donde dirige el Laboratorio de Programación Paralela. Trabaja en métodos, herramientas y algoritmos que dan soporte al desarrollo y despliegue de sistemas de software paralelo en diversas etapas de su ciclo de vida. Felix recibió su doctorado por la Universidad RWTH Aachen en 2003. Tras trabajar más de dos años como posdoctorando en el Laboratorio de Computación Innovadora de la Universidad de Tennessee, fue nombrado líder de grupo de investigación en el Centro de Supercomputación de Jülich. Entre 2009 y 2015, fue director del Laboratorio de Programación Paralela en la Escuela Alemana de Investigación para Ciencias de la Simulación en Aquisgrán (Aachen) y catedrático en la Universidad RWTH Aachen. Felix ha realizado importantes contribuciones a varias herramientas de rendimiento de código abierto para programas paralelos, incluyendo Scalasca, Score-P y Extra-P. Además, ha impulsado el Instituto Virtual de Supercomputación de Alta Productividad, una iniciativa internacional de desarrolladores de herramientas de programación HPC orientada a mejorar, integrar y desplegar sus productos. Ha publicado más de 150 artículos arbitrados sobre computación paralela, varios de los cuales han recibido premios.