Barreras especulativas con memoria transaccional - Pedrero-Luque, Manuel; Quislant-del-Barrio, Ricardo; Gutiérrez-Carrasco, Eladio Damián; López-Zapata, Emilio; Plata-González, Óscar Guillermo (Sociedad de Arquitectura y Tecnología de Computadores (SARTECO), 2019)
La Memoria Transaccional (TM) es una alternativa al modelo de programación basado en locks que pretende simplificar la programación paralela. TM sustituye locks por transacciones para resolver el problema de la exclusión mutua. Las transacciones se ejecutan de manera optimista, en paralelo, mientras el sistema transaccional comprueba si hay conflictos entre ellas. En este trabajo proponemos el uso de transacciones para implementar una barrera especulativa (SB) optimista que reemplace las barreras pesimistas basadas en locks. SBs aprovecha el soporte TM hardware para permitir que los hilos salten la barrera y ejecuten especulativamente. Cuando un hilo llega a una barrera abre una transacción para proteger la ejecución y poder volver a la barrera en caso de conflicto. Cuando el último hilo alcanza la barrera los hilos especulativos pueden acometer los cambios.
Keywords: Programación en paralelo (Informática); Barreras Especulativas; Memoria Transaccional; IBM Power8; Memoria Compartida