Divergence Analysis with Affine Constraints

Diogo Sampaio 1 Rafael Martins 1 Sylvain Collange 2, * Fernando Magno Quintão Pereira 1
* Auteur correspondant
1 Laboratório de Linguagens de Programação
DCC - UFMG - Departamento de Ciência da Computação [Minas Gerais]
2 ALF - Amdahl's Law is Forever
Inria Rennes – Bretagne Atlantique , IRISA-D3 - ARCHITECTURE
Abstract : The rising popularity of graphics processing units is bringing renewed interest in code optimization techniques for SIMD processors. Many of these optimizations rely on divergence analyses, which classify variables as uniform, if they have the same value on every thread, or divergent, if they might not. This paper introduces a new kind of divergence analysis, that is able to represent variables as affine functions of thread identifiers. We have implemented this analysis in Ocelot, an open source compiler, and use it to analyze a suite of 177 CUDA kernels from well-known benchmarks. We can mark about one fourth of all program variables as affine functions of thread identifiers. In addition to the novel divergence analysis, we also introduce the notion of a divergence aware register allocator. This allocator uses information from our analysis to either rematerialize affine variables, or to move uniform variables to shared memory. As a testimony of its effectiveness, our divergence aware allocator produces GPU code that is 29.70% faster than the code produced by Ocelot's register allocator. Divergence analysis with affine constraints is publicly available in the Ocelot compiler since June/2012.
Type de document :
Communication dans un congrès
24th International Symposium on Computer Architecture and High Performance Computing, Oct 2012, New-York, NY, United States. pp.67-74, 2012, 〈10.1109/SBAC-PAD.2012.22〉
Liste complète des métadonnées

Littérature citée [17 références]  Voir  Masquer  Télécharger

https://hal.archives-ouvertes.fr/hal-00650235
Contributeur : Sylvain Collange <>
Soumis le : mardi 20 novembre 2012 - 18:44:58
Dernière modification le : vendredi 16 novembre 2018 - 01:40:20
Document(s) archivé(s) le : jeudi 21 février 2013 - 12:32:07

Fichier

Sampaio_DivergenceAnalysisAffi...
Fichiers produits par l'(les) auteur(s)

Identifiants

Citation

Diogo Sampaio, Rafael Martins, Sylvain Collange, Fernando Magno Quintão Pereira. Divergence Analysis with Affine Constraints. 24th International Symposium on Computer Architecture and High Performance Computing, Oct 2012, New-York, NY, United States. pp.67-74, 2012, 〈10.1109/SBAC-PAD.2012.22〉. 〈hal-00650235v2〉

Partager

Métriques

Consultations de la notice

923

Téléchargements de fichiers

226