Skip to main navigation Skip to search Skip to main content

LLVM parallel intermediate representation: Design and evaluation using OpenSHMEM communications

  • Dounia Khaldi
  • , Pierre Jouvelot
  • , François Irigoin
  • , Corinne Ancourt
  • , Barbara Chapman
  • University of Houston
  • Mines ParisTech

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

14 Scopus citations

Abstract

We extend the LLVM intermediate representation (IR) to make it a parallel IR (LLVM PIR), which is a necessary step for introducing simple and generic parallel code optimization into LLVM. LLVM is a modular compiler that can be efficiently and easily used for static analysis, static and dynamic compilation, optimization, and code generation. Being increasingly used to address high-performance computing abstractions and hardware, LLVM will benefit from the ability to handle parallel constructs at the IR level. We use SPIRE, an incremental methodology for designing the intermediate representations of compilers that target parallel programming languages, to design LLVM PIR. Languages and libraries based on the Partitioned Global Address Space (PGAS) programming model have emerged in recent years with a focus on addressing the programming challenges for scalable parallel systems. Among these, OpenSHMEM is a library that is the culmination of a standardization effort among many implementers and users of SHMEM; it provides a means to develop light-weight, portable, scalable applications based on the PGAS programming model. As a use case for validating our LLVM PIR proposal, we show how OpenSHMEM one-sided communications can be optimized via our implementation of PIR into the LLVM compiler; we illustrate two important optimizations for such operations using loop tiling and communication vectorization.

Original languageEnglish
Title of host publicationProceedings of LLVM-HPC 2015
Subtitle of host publication2nd Workshop on the LLVM Compiler Infrastructure in HPC - Held in conjunction with SC 2015: The International Conference for High Performance Computing, Networking, Storage and Analysis
PublisherAssociation for Computing Machinery, Inc
ISBN (Electronic)9781450340052
DOIs
StatePublished - Nov 15 2015
Event2nd Workshop on the LLVM Compiler Infrastructure in HPC, LLVM-HPC 2015 - Austin, United States
Duration: Nov 15 2015 → …

Publication series

NameProceedings of LLVM-HPC 2015: 2nd Workshop on the LLVM Compiler Infrastructure in HPC - Held in conjunction with SC 2015: The International Conference for High Performance Computing, Networking, Storage and Analysis

Conference

Conference2nd Workshop on the LLVM Compiler Infrastructure in HPC, LLVM-HPC 2015
Country/TerritoryUnited States
CityAustin
Period11/15/15 → …

Keywords

  • LLVM
  • Open-SHMEM
  • Parallel language intermediate representation
  • PGAS
  • SPIRE

Fingerprint

Dive into the research topics of 'LLVM parallel intermediate representation: Design and evaluation using OpenSHMEM communications'. Together they form a unique fingerprint.

Cite this