PENCIL Language Specification - Inria - Institut national de recherche en sciences et technologies du numérique Accéder directement au contenu
Rapport (Rapport De Recherche) Année : 2015

PENCIL Language Specification

Résumé

Programming accelerators such as GPUs with low-level APIs and languages such as OpenCL and CUDA is difficult, error prone, and not performance-portable. Automatic parallelization and domain specific languages (DSLs) have been proposed to hide this complexity and to regain some performance portability. We present PENCIL, a rigorously-defined subset of GNU C99 with specific programming rules and few extensions. Adherence to this subset and the use of these extensions enable compilers to exploit parallelism and to better optimize code when targeting accelerators. We intend PENCIL both as a portable implementation language to facilitate the acceleration of applications, and as a tractable target language for DSL compilers.
Fichier principal
Vignette du fichier
RR-8706.pdf (734.12 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

hal-01154812 , version 1 (24-05-2015)
hal-01154812 , version 2 (28-05-2015)
hal-01154812 , version 3 (01-06-2015)

Identifiants

  • HAL Id : hal-01154812 , version 3

Citer

Mohamed Riyadh Baghdadi, Albert Cohen, Tobias Grosser, Sven Verdoolaege, Anton Lokhmotov, et al.. PENCIL Language Specification: PENCIL (Platform-Neutral Compute Intermediate Language) Language Specification. [Research Report] RR-8706, INRIA. 2015, pp.37. ⟨hal-01154812v3⟩
1190 Consultations
973 Téléchargements

Partager

Gmail Facebook X LinkedIn More