Use of Valgrind's Tool Suite and Profile-Guided Optimization in a CFD Code

Luciano Garelli, Alejandro Dabin, Juan P. Dorsch, Mario A. Storti


In this work Valgrind's Tool Suite is used to profile memory usage (Cachegrind) and to graph function calls (Callgrind) when running Code Saturne with OpenMP. The object of this analysis is to detect possible code's bottlenecks in order to improve performance in shared memory environments. Additionally, tests were run using flat Message Passing Interface (MPI) to compare total memory usage between these parallelization strategies. Finally, the code is compiled using Profile-Guided Optimization (PGO) with a representative set of workloads to evaluate if this technique improves application's performance.

Full Text:


Asociación Argentina de Mecánica Computacional
Güemes 3450
S3000GLN Santa Fe, Argentina
Phone: 54-342-4511594 / 4511595 Int. 1006
Fax: 54-342-4511169
E-mail: amca(at)
ISSN 2591-3522