Techniques to improve concurrency in hardware transactional memory

Tesis doctoral de AdriÁ  Armejach Sanosa

Los mecanismos de memoria transaccional ™ tienen como objetivo facilitar la programación paralela proporcionando una abstracción sobre la gestión de los datos compartidos. El programador define secciones de código, llamadas transacciones, y el sistema de tm garantiza que estas se ejecutan de forma atómica y aislada del resto del sistema . El programador no tiene que implementar este comportamiento, como ocurre en las técnicas tradicionales de exclusión mutua que usan cerrojos – esta responsabilidad se delega al sistema de tm subyacente. Además, con transacciones se puede aprovechar el paralelismo, que no estaría disponible en técnicas de exclusión mutua. Esto se logra permitiendo la ejecución optimista de transacciones, asumiendo que ninguna otra transacción opera simultáneamente en los mismos datos. Si esta hipótesis es cierta, la transacción expone sus cambios a la memoria compartida al final de su ejecución, de lo contrario , se produce un conflicto y el sistema de tm debe abortar una de las transacciones en conflicto para garantizar una correcta ejecución; la operación abortada revierte sus cambios locales y se ejecuta de nuevo. Implementaciones hardware y software de tm se han estudiado en detalle. Sin embargo, la adopción a gran escala de los enfoques software se ha visto frenada debido a limitaciones de rendimiento. en esta tesis, nos centramos en la identificación y solución de problemas en enfoques hardware (htm) con el fin de mejorar la concurrencia y escalabilidad. Dos dimensiones clave determinan el espacio de diseño en htm: la detección de conflictos y gestión de versiones especulativas. El primero determina cómo se detectan conflictos entre transacciones concurrentes y la forma de resolverlos. El último define donde se almacenan las actualizaciones transaccionales y cómo el sistema trata con dos versiones de los mismos datos lógicos. Esta tesis propone un mecanismo flexible que permite el almacenamiento y el acceso a dos versiones de los mismos datos lógicos, que mejora el rendimiento general del sistema y la eficiencia energética. además, en esta tesis se exploran dos soluciones para reducir la contención del sistema – circunstancias en que las transacciones abortan debido a dependencias de datos – con el fin de mejorar la concurrencia de los sistemas htm. El primer mecanismo proporciona un diseño adecuado para aplicar precarga de datos con el fin de acelerar la ejecución de transacciones, reduciendo de la ventana de tiempo en que dichas transacciones pueden experimentar contención. El segundo, es un mecanismo preciso de predicción de conflictos. Este mecanismo utiliza la historia del comportamiento de las transacciones y la localidad temporal en las referencias a memoria para inferir predicciones. por último, esta tesis también analiza protocolos de htm que han sido implementados en recientes productos comerciales. Estos protocolos han sido diseñados para ser simples y fáciles de incorporar en procesadores existentes. Sin embargo, esta simplicidad supone una degradación del rendimiento grave debido a condiciones bloqueo activo transitorias o persistentes, lo que podría prevenir progreso de una aplicación. Demostramos que las técnicas existentes no son capaces de mitigar esta degradación de forma efectiva. Para hacer frente a este problema se proponen un conjunto de técnicas que conservan la sencillez del protocolo al mismo tiempo que proporcionan un mejor rendimiento y garantías de progreso sobre una amplia variedad de cargas de trabajo transaccionales.

 

Datos académicos de la tesis doctoral «Techniques to improve concurrency in hardware transactional memory«

  • Título de la tesis:  Techniques to improve concurrency in hardware transactional memory
  • Autor:  AdriÁ  Armejach Sanosa
  • Universidad:  Politécnica de catalunya
  • Fecha de lectura de la tesis:  13/06/2014

 

Dirección y tribunal

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