Actualmente existe una enorme cantidad de dispositivos y sistemas, como ordenadores portátiles y teléfonos móviles, que dependen de una batería para su funcionamiento. Como consecuencia, el hardware que incorporan debe ser energéticamente eficiente. La industria, para soportar este mercado, está desarrollando procesadores con el objetivo de reducir su consumo energético. Por ejemplo, ARM propone la arquitectura big.LITTLE como un procesador multi-núcleo heterogéneo: unos núcleos más rápidos para aplicaciones orientadas al rendimiento, y otros más lentos orientados a la eficiencia energética. Puesto que todos los núcleos acceden a la misma memoria física, las aplicaciones multi-hilo deben recurrir a algún tipo de sincronización para coordinar el acceso a los datos compartidos. La memoria transaccional (TM) es una solución optimista para ofrecer sincronización de hilos concurrentes en memoria compartida. En TM se permite el acceso en paralelo a los datos compartidos y, mediante un mecanismo de detección de conflictos, se puede garantizar la exclusión mútua.
Para beneficiarse de las ventajas que ofrece TM, así como de las características de los procesadores heterogéneos de bajo consumo, es necesario que las soluciones de TM tengan en cuenta los requisitos energéticos y de rendimiento de las aplicaciones en consonancia con lo que ofrece el procesador. Como paso inicial, hay que comprender el rendimiento y consumo energético de las soluciones TM actuales. Para ello, hemos realizado una evaluación de consumo y rendimiento de una librería de TM software, TinySTM, sobre un procesador del tipo big.LITTLE. Los resultados revelan una buena escalabilidad en los núcleos de bajo consumo para la mayoría de las aplicaciones evaluadas. Sin embargo, la aplicación con mayores requerimientos de cómputo resulta ser energéticamente más eficiente en los núcleos orientados al rendimiento, a pesar de su mayor consumo.