Improving the performance of a thread-level speculation library

  1. Estebanez, Alvaro
  2. Llanos, Diego R.
  3. González Escribano, Arturo
Revista:
Annals of Multicore and GPU Programming: AMGP

ISSN: 2341-3158

Año de publicación: 2014

Volumen: 1

Número: 1

Páginas: 38-47

Tipo: Artículo

Otras publicaciones en: Annals of Multicore and GPU Programming: AMGP

Resumen

Speculative parallelization is a technique that tries to extract parallelism of loops that can not be parallelized at compile time. The underlying idea is to optimistically execute the code in parallel, while a subsystem checks that sequential semantics have not been violated. There exist many proposals in this field, however, to the best of our knowledge, there are not any solution that allows to effectively parallelize those applications that use pointer arithmetic. In a previous work, the authors of this paper presented a software library that allow the parallelization of this kind of applications. Nevertheless, the software developed had an important limitation: Execution time of the parallelized versions was higher than the sequential one. In this work, this limitation has been addressed, finding and solving the reasons of this lack of efficiency. Experimental results obtained allow us to affirm that these limitations have been overcome