Towards lightweight and high-performance hardware transactional memory

Tesis doctoral de Sasa Tomic

La sincronización tradicional basada en los cerrojos de exclusión mutua (locks) serializa los accesos a las secciones críticas protegidas este cerrojo. La utilización de varios cerrojos en forma concurrente y/o paralela aumenta la posibilidad de entrar en abrazo mortal (deadlock) o en un bloqueo activo (livelock) en el programa, está es una de las razones por lo cual programar en forma paralela resulta ser mucho mas dificultoso que programar en forma secuencial. La memoria transaccional ™ es un paradigma prometedor para la programación paralela, que ofrece una alternativa a los cerrojos. La memoria transaccional tiene muchas ventajas desde el punto de vista tanto práctico como teórico. tm elimina el riesgo de bloqueo mutuo y de bloqueo activo, mientras que proporciona una semántica de atomicidad, coherencia, aislamiento con características similares a las secciones críticas. Tm ejecuta especulativamente una serie de accesos a la memoria como una transacción atómica. Los cambios especulativos de la transacción se mantienen privados hasta que se confirma la transacción. Si una transacción entra en conflicto con otra transacción o sea que alguna de ellas escribe en una dirección que la otra leyó o escribió, o se entra en un abrazo mortal o en un bloqueo activo, el sistema de tm aborta la transacción y revierte los cambios especulativos. para ser eficaz, una implementación de tm debe proporcionar un alto rendimiento y escalabilidad. Las implementaciones de tm en el software (stm) no proporcionan este desempeño deseable, en cambio, las implementaciones de tm en hardware (htm) tienen mejor desempeño y una escalabilidad relativamente buena, debido a su mejor control de los recursos de hardware y que la resolución de los conflictos así el mantenimiento y gestión de los datos se hace en hardware. Sin embargo, muchos de los sistemas de htm están limitados a los recursos de hardware disponibles, por ejemplo el tamaño de las caches privadas, y dependen de mecanismos de software para cuando esos límites son sobrepasados. Estos sistemas htm, llamados best-effort htm no son deseables, ya que obligan al programador a pensar en términos de los límites existentes en el hardware que se está utilizando, así como en el sistema de stm que se llama cuando los recursos son sobrepasados. Además, tiene que resolver que transacciones hardware y software se ejecuten concurrentemente. En cambio, los sistemas de htm ilimitados soportan un numero de operaciones ilimitadas o sea no están restringidos a límites impuestos artificialmente por el hardware, como ser el tamaño de las caches o buffers internos. Los sistemas htm ilimitados por lo general requieren protocolos complejos o mecanismos muy costosos para la detección de conflictos y el mantenimiento de versiones de los datos entre las transacciones. Por otra parte, la ejecución de transacciones es a menudo mucho más lenta que en una ejecución sobre un sistema de htm que este limitado. Esto es debido al que los mecanismos utilizados en el htm limitado trabaja con conjuntos de datos relativamente pequeños que caben o están muy cerca del núcleo del procesador. en esta tesis estudiamos implementaciones de tm en hardware. Presentaremos tres contribuciones principales: primero, mejoramos el rendimiento general de los sistemas, al proponer un protocolo escalable para la gestión de conflictos. El protocolo detecta los conflictos de forma precisa, en contraste con otras técnicas basadas en filtros bloom, que pueden reportar conflictos falsos entre las transacciones. Segundo, proponemos un best-effort htm que utiliza el nuevo protocolo escalable detección de conflictos, denominado eazyhtm. Eazyhtm permite la ejecución completamente paralela de todas las transacciones sin conflictos, y por lo general simplifica la ejecución.

 

Datos académicos de la tesis doctoral «Towards lightweight and high-performance hardware transactional memory«

  • Título de la tesis:  Towards lightweight and high-performance hardware transactional memory
  • Autor:  Sasa Tomic
  • Universidad:  Politécnica de catalunya
  • Fecha de lectura de la tesis:  13/07/2012

 

Dirección y tribunal

  • Director de la tesis
    • Adrián Cristal Kestelman
  • Tribunal
    • Presidente del tribunal: abraham Mendelson
    • mikel Lujan (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