RT info:eu-repo/semantics/article T1 The BonaFide C Analyzer: automatic loop-level characterization and coverage measurement A1 Aldea, Sergio A1 Llanos Ferraris, Diego Rafael A1 González Escribano, Arturo K1 Informática K1 Automatic parallelization K1 Code analysis K1 Compiler framework K1 Profiling information K1 Source code representation K1 Source transformation K1 XML K1 1203 Ciencia de Los Ordenadores K1 3304 Tecnología de Los Ordenadores AB The advent of multicore technologies has increased the interest in parallelization techniques for existing sequential applications. These techniques include the need of detecting loops that are good candidates for parallelization, and classifying all variables of these loops according to their use, a task surprisingly hard to be carried out manually. In this paper, we introduce the BonaFide C Analyzer, an XML-based framework that combines static analysis of source code with profiling information to generate complete reports regarding all loops in a C application, including loop coverage, loop suitability for parallelization, a classification of all variables inside loops based on their accesses, and other hurdles that restrict the parallelization. This information allows to analyze how particular language constructs are used in real-world applications, and helps the programmer to parallelize the code. To show the features of the framework, we present the results of an in-depth loop characterization of C applications that are part of the SPEC CPU2006 benchmark suite. Our study shows that 47.72 % of loops present in the applications analyzed are potentially parallelizable with existent parallel programming models such as OpenMP, while an additional 37.7 % of loops could be run in parallel with the help of runtime speculative parallelization techniques. PB Springer SN 0920-8542 YR 2014 FD 2014 LK https://uvadoc.uva.es/handle/10324/70433 UL https://uvadoc.uva.es/handle/10324/70433 LA eng NO The Journal of Supercomputing, Vol. 68, Issue 3, June 2014, pags. 1378-1401. ISSN 0920-8542 NO Producción Científica DS UVaDOC RD 09-nov-2024