Efficient hardware/software co-designed schemes for low-power processors

Tesis doctoral de Pedro López Muñoz

En la actualidad, la industria y la comunidad científica han adoptado los diseños multinúcleo para continuar mejorando el rendimiento de los procesadores manteniendo consumos energéticos y tamaños razonables. Sin embargo, en estos diseños hay que adoptar una solución de compromiso: dedicar el área del integrado para poner multitud de núcleos sencillos con los que favorecer el paralelismo a nivel de aplicación (tlp) sacrificando parte del paralelismo a nivel de instrucción (ilp), o dedicar el área disponible para poner una cantidad pequeña de núcleos complejos con los que favorecer ilp y explotar moderadamente tlp. En esta tesis apostamos por procesadores co-diseñados hardware/software como alternativa para continuar explotando tanto tlp como ilp. Para conseguirlo, estos diseños mejoran el rendimiento ilp de procesadores sencillos mediante la introducción de una capa software que adapta dinámicamente las aplicaciones para hacer un mejor uso de los recursos. en esta tesis proponemos tres diferentes técnicas enfocadas a simplificar el diseño del hardware y mejorar el rendimiento de procesadores co-diseñados de bajo consumo. Estas tres técnicas atacan los puntos más relevantes de su diseño: la detección de código frecuentemente ejecutado (también denominado hot code), su optimización y su ejecución. la primera técnica es un mecanismo de profiling, denominado liu profiler, que permite la rápida detección de hot code. Liu profiler utiliza una pequeña tabla hardware que implementa una novedosa política de reemplazo diseñada para la detección de hot code. El mecanismo se complementa con un componente software que a partir de la información de la tabla, construye las regiones de código que después serán optimizadas y ejecutadas. El código detectado por el liu profiler, utilizando una tabla de 128 entradas, representa un 85,5% del total del código dinámico, mientras que otras propuestas requieren tablas de un tamaño de 4 a 8 veces superior para obtener resultados similares. La implementación del liu profiler solo incrementa en un 1% el área y en un 0.87% el consumo de un procesador sencillo de bajo consumo. la segunda técnica es un mecanismo para guardar y restaurar el estado arquitectónico de los registros de forma eficiente. El objetivo es permitir la ejecución de regiones de código optimizadas utilizando técnicas de especulación muy agresivas e introduciendo mínimos costes de recuperación en caso de fallo. El mecanismo propuesto, denominado hrc (hybrid register checkpointing), combina técnicas hardware y software. El software se encarga de preparar los códigos para el guardado y la restauración de los valores, mientras que el hardware facilita estas funciones ofreciendo recursos especializados. Hrc reduce en un 11% el área y en un 24,4% el consumo energético del banco de registros utilizado en procesadores que hacen uso de técnicas comunes que requieren doblar el número de registros. Además, hrc solo degrada en un 1% el rendimiento de éstas. la tercera técnica, loop parallelization (lp), permite aumentar el paralelismo a nivel de instrucción mediante la ejecución paralela de múltiples iteraciones de un mismo bucle, utilizando múltiples threads en un procesador smt. La capa software detecta los bucles, los prepara y los adapta aplicando optimizaciones especiales para su posterior ejecución. Lp utiliza un novedoso mecanismo de comunicación de valores entre registros pertenecientes a diferentes threads. Además, lp aprovecha los recursos existentes del procesador para reducir los costes adicionales derivados de la paralelización de los bucles, permitiendo paralelizar tanto bucles pequeños como bucles que iteran pocas veces. Lp mejora la ejecución de los bucles en un 16,5% en comparación con un baseline especialmente optimizado. La técnica contribuye positivamente a la integración de un alto número de procesadores sencillos en un mismo integrado y permite que colaboren entre ellos para mejorar el paralelismo a nivel de instrucción.

 

Datos académicos de la tesis doctoral «Efficient hardware/software co-designed schemes for low-power processors«

  • Título de la tesis:  Efficient hardware/software co-designed schemes for low-power processors
  • Autor:  Pedro López Muñoz
  • Universidad:  Politécnica de catalunya
  • Fecha de lectura de la tesis:  17/03/2014

 

Dirección y tribunal

  • Director de la tesis
    • Fernando Latorre Salinas
  • Tribunal
    • Presidente del tribunal: víctor Viñals yúfera
    • raul Martinez morais (vocal)
    • (vocal)
    • (vocal)

 

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Scroll al inicio