Identifying scalar behavior in CUDA kernels

Sylvain Collange 1, *
* Corresponding author
1 ARENAIRE - Computer arithmetic
Inria Grenoble - Rhône-Alpes, LIP - Laboratoire de l'Informatique du Parallélisme
Abstract : We propose a compiler analysis pass for programs expressed in the Single Program, Multiple Data (SPMD) programming model. It identifies statically several kinds of regular patterns that can occur between adjacent threads, including common computations, memory accesses at consecutive locations or at the same location and uniform control flow. This knowledge can be exploited by SPMD compilers targeting SIMD architectures. We present a compiler pass developed within the Ocelot framework that performs this analysis on NVIDIA CUDA programs at the PTX intermediate language level. Results are compared with optima obtained by simulation of several sets of CUDA benchmarks.
Complete list of metadatas

Cited literature [17 references]  Display  Hide  Download

https://hal.archives-ouvertes.fr/hal-00555134
Contributor : Sylvain Collange <>
Submitted on : Wednesday, January 12, 2011 - 2:20:33 PM
Last modification on : Thursday, February 7, 2019 - 2:35:28 PM
Long-term archiving on : Tuesday, November 6, 2012 - 11:20:11 AM

File

collange_scalarizing_compiler_...
Files produced by the author(s)

Identifiers

  • HAL Id : hal-00555134, version 1

Collections

Citation

Sylvain Collange. Identifying scalar behavior in CUDA kernels. 2011. ⟨hal-00555134⟩

Share

Metrics

Record views

480

Files downloads

547