Loo.py: From Fortran to performance via transformation and substitution rules

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

A large amount of numerically-oriented code is written and is being written in legacy languages. Much of this code could, in principle, make good use of data-parallel throughput-oriented computer architectures. Loo.py, a transformation-based programming system targeted at GPUs and general data-parallel architectures, provides a mechanism for user-controlled transformation of array programs. This transformation capability is designed to not just apply to programs written specifically for Loo.py, but also those imported from other languages such as Fortran. It eases the trade-off between achieving high performance, portability, and programmability by allowing the user to apply a large and growing family of transformations to an input program. These transformations are expressed in and used from Python and may be applied from a variety of settings, including a pragma-like manner from other languages.

Original languageEnglish (US)
Title of host publicationARRAY 2015 - Proceedings of the 2nd ACM SIGPLAN International Workshop on Libraries, Languages, and Compilers for Array Programming, co-located with PLDI 2015
EditorsJan Vitek, Hidehiko Masuhara, Mary Sheeran, Laurie Hendren
PublisherAssociation for Computing Machinery
Pages1-6
Number of pages6
ISBN (Electronic)9781450335843
DOIs
StatePublished - Jun 13 2015
Event2nd ACM SIGPLAN International Workshop on Libraries, Languages, and Compilers for Array Programming, ARRAY 2015 - Portland, United States
Duration: Jun 13 2015 → …

Publication series

NameARRAY 2015 - Proceedings of the 2nd ACM SIGPLAN International Workshop on Libraries, Languages, and Compilers for Array Programming, co-located with PLDI 2015

Conference

Conference2nd ACM SIGPLAN International Workshop on Libraries, Languages, and Compilers for Array Programming, ARRAY 2015
Country/TerritoryUnited States
CityPortland
Period6/13/15 → …

Keywords

  • Code generation
  • Embedded language
  • Fortran
  • GPU
  • High-level language
  • High-performance
  • OpenCL
  • Program transformation
  • Substitution rule

ASJC Scopus subject areas

  • Theoretical Computer Science
  • Computational Theory and Mathematics

Fingerprint

Dive into the research topics of 'Loo.py: From Fortran to performance via transformation and substitution rules'. Together they form a unique fingerprint.

Cite this