Scholarship 19/04536-9 - Programação paralela, Análise de desempenho - BV FAPESP
Advanced search
Start date
Betweenand

Improving performance of collision cross section calculation through component annotation

Grant number: 19/04536-9
Support Opportunities:Scholarships in Brazil - Doctorate
Start date: April 01, 2019
End date: December 31, 2022
Field of knowledge:Physical Sciences and Mathematics - Computer Science - Computer Systems
Principal Investigator:Guido Costa Souza de Araújo
Grantee:Bruno Chinelato Honorio
Host Institution: Instituto de Computação (IC). Universidade Estadual de Campinas (UNICAMP). Campinas , SP, Brazil
Associated research grant:13/08293-7 - CCES - Center for Computational Engineering and Sciences, AP.CEPID

Abstract

Contemporary compilers implement various parallelization techniques, however, these techniques are usually restricted to loops that do not have dependencies and are simple to solve, such as reductions of arithmetic operations. These restrictions prevent the parallelization of loops that have dependencies. Loops with loop carry dependencies can present two scenarios: (i) the compiler identifies the dependency; (ii) the compiler can not prove that there is no dependency at compile time, even if no dependency manifests itself during execution time. Compilers of the state-of-the-art, such as LLVM and GCC, do not parallelize loops with loop carry dependencies automatically. To solve this problem, graduate students from the Institute of Computation at UNICAMP began to develop a new mechanism that, as you determine the sequential components of a loop, the programmer can apply a parallelization algorithm over the parallel part of the loop. This PhD work aims to make a series of modifications on this mechanism: to makeit completely independent of any application, facilitating the addition of new parallelization algorithms; modify the semantics of the mechanism, to facilitate its use; allow the mechanism to be used in a larger number of loops; and offer automations over the execution of the mechanism. Thus, with these modifications, developers can add new functionalities to it, as well as use the mechanism for a greater number of applications and loops. This mechanism will then be applied to a real chemistry problem: the calculation of the collision cross section, used to aid in the identification and characterization of an ion. This calculation is very expensive performance wise and some works have already created parallelization techniques to speed it up, but none aimed at gaining performance over the parallelization of loops with loop carry dependencies. Specifically, the mechanism will be applied in a software developed for the calculation of the collision cross section that offers new approaches to perform this calculationin a more efficient way. The goal of this work is summarized in the aggressive exploration of loops with loop carry dependencies and demonstrates, on top of a real problem, the performance gains that these loops may present once they are parallelized. (AU)

News published in Agência FAPESP Newsletter about the scholarship:
More itemsLess items
Articles published in other media outlets ( ):
More itemsLess items
VEICULO: TITULO (DATA)
VEICULO: TITULO (DATA)

Scientific publications
(References retrieved automatically from Web of Science and SciELO through information on FAPESP grants and their corresponding numbers as mentioned in the publications by the authors)
HONORIO, BRUNO CHINELATO; DE CARVALHO, JOAO P. L.; SKAF, MUNIR; ARAUJO, GUIDO; MILFELD, K; DESUPINSKI, BR; KOESTERKE, L; KLINKENBERG, J. Using OpenMP to Detect and Speculate Dynamic DOALL Loops. OPENMP: PORTABLE MULTI-LEVEL PARALLELISM ON MODERN SYSTEMS, v. 12295, p. 16-pg., . (19/04536-9, 13/08293-7, 16/15337-9, 19/01110-0)
DE CARVALHO, JOAO P. L.; HONORIO, BRUNO C.; BALDASSIN, ALEXANDRO; ARAUJO, GUIDO; IEEE. Improving Transactional Code Generation via Variable Annotation and Barrier Elision. 2020 IEEE 34TH INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM IPDPS 2020, v. N/A, p. 10-pg., . (19/04536-9, 13/08293-7, 16/15337-9, 18/15519-5)
Academic Publications
(References retrieved automatically from State of São Paulo Research Institutions)
HONORIO, Bruno Chinelato. Melhorando o desempenho e a programabilidade de código transacional gerado por compiladores através de construções em nível de linguagem. 2023. Doctoral Thesis - Universidade Estadual de Campinas (UNICAMP). Instituto de Computação Campinas, SP.