Selective, Embedded, Just-In-Time Specialization (SEJITS): Portable Parallel Performance from Sequential, Productive, Embedded Domain-Specific Languages

Abstract

Domain-expert productivity programmers desire scalable application performance, but usually must rely on efficiency programmers who are experts in explicit parallel programming to achieve it. Since such efficiency programmers are rare, to maximize reuse of their work we propose SEJITS (Selective Embedded Just-in-Time Specialization), a methodology for encapsulating efficiency programmers' strategies in mini-compilers for domain-specific embedded languages (DSELs). The DSELs are then glued together by embedding in a common high-level host language familiar to productivity programmers. With a variety of implemented examples, including structured grids, large-scale graph analysis, audio processing, and communication-avoiding linear algebra, we demonstrate that our approach allows productivity programmers' code to approach the performance of efficiency-level code while retaining the ease of authoring and maintenance provided by productivity languages.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Dec 01, 2012
Accession Number
ADA572590

Entities

People

  • Armando Fox

Organizations

  • University of California, Berkeley

Tags

Communities of Interest

  • C4I
  • Energy and Power Technologies

DTIC Thesaurus Topics

  • Air Force
  • Air Force Research Laboratories
  • Algebra
  • Compilers
  • Computer Programming
  • Computer Programs
  • Computers
  • Data Sets
  • Floating Point Operations
  • Graphics Processing Unit
  • High Level Languages
  • Language
  • Linear Algebra
  • Microarchitecture
  • Parallel Computing
  • Scripting Languages
  • Semantic Models

Fields of Study

  • Computer science
  • Engineering

Readers

  • Linear Algebra
  • Logistics and Supply Chain Management.
  • Software Engineering.