RT info:eu-repo/semantics/article T1 BFCA+: Automatic Synthesis of Parallel Code with TLS Capabilities A1 Aldea López, Sergio A1 Llanos Ferraris, Diego Rafael A1 González Escribano, Arturo AB Parallelization of sequential applications requires extracting information about the loops and how their variables are accessed, and afterwards, augmenting the source code with extra code depending on such information. In this paper we propose a framework that avoids such an error-prone, time-consuming task. Our solution leverages the compile-time information extracted from the source code to classify all variables used inside each loop according to their accesses. Then, our system, called BFCA+, automatically instruments the source code with the necessary OpenMP directives and clauses to allow its parallel execution, using the standard shared and private clauses for variable classification. The framework is also capable of instrumenting loops for speculative parallelization, with the help of the ATLaS runtime system, that defines a new speculative clause to point out those variables that may lead to a dependency violation. As a result, the target loop is guaranteed to correctly run in parallel, ensuring that its execution follows sequential semantics even in the presence of dependency violations. Our experimental evaluation shows that the framework not only saves development time, but also leads to a faster code than the one manually parallelized. PB Springer YR 2017 FD 2017 LK http://uvadoc.uva.es/handle/10324/29111 UL http://uvadoc.uva.es/handle/10324/29111 LA eng NO The Journal of Supercomputing, 73(1), 88-99, jan 2017, ISSN 0920-8542 NO Producción Científica DS UVaDOC RD 01-may-2024