skip to main content
OSTI.GOV title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: Domain Specific Language Support for Exascale

Abstract

Domain-Specific Languages (DSLs) offer an attractive path to Exascale software since they provide expressive power through appropriate abstractions and enable domain-specific optimizations. But the advantages of a DSL compete with the difficulties of implementing a DSL, even for a narrowly defined domain. The DTEC project addresses how a variety of DSLs can be easily implemented to leverage existing compiler analysis and transformation capabilities within the ROSE open source compiler as part of a research program focusing on Exascale challenges. The OSU contributions to the DTEC project are in the area of code generation from high-level DSL descriptions, as well as verification of the automatically-generated code.

Authors:
 [1]
  1. The Ohio State Univ., Columbus, OH (United States)
Publication Date:
Research Org.:
The Ohio State Univ., Columbus, OH (United States)
Sponsoring Org.:
USDOE Office of Science (SC), Advanced Scientific Computing Research (ASCR) (SC-21)
OSTI Identifier:
1344812
Report Number(s):
DOE-OSU-SC0008844
6142925813
DOE Contract Number:
SC0008844
Resource Type:
Technical Report
Country of Publication:
United States
Language:
English
Subject:
97 MATHEMATICS AND COMPUTING

Citation Formats

Sadayappan, Ponnuswamy. Domain Specific Language Support for Exascale. United States: N. p., 2017. Web. doi:10.2172/1344812.
Sadayappan, Ponnuswamy. Domain Specific Language Support for Exascale. United States. doi:10.2172/1344812.
Sadayappan, Ponnuswamy. Fri . "Domain Specific Language Support for Exascale". United States. doi:10.2172/1344812. https://www.osti.gov/servlets/purl/1344812.
@article{osti_1344812,
title = {Domain Specific Language Support for Exascale},
author = {Sadayappan, Ponnuswamy},
abstractNote = {Domain-Specific Languages (DSLs) offer an attractive path to Exascale software since they provide expressive power through appropriate abstractions and enable domain-specific optimizations. But the advantages of a DSL compete with the difficulties of implementing a DSL, even for a narrowly defined domain. The DTEC project addresses how a variety of DSLs can be easily implemented to leverage existing compiler analysis and transformation capabilities within the ROSE open source compiler as part of a research program focusing on Exascale challenges. The OSU contributions to the DTEC project are in the area of code generation from high-level DSL descriptions, as well as verification of the automatically-generated code.},
doi = {10.2172/1344812},
journal = {},
number = ,
volume = ,
place = {United States},
year = {Fri Feb 24 00:00:00 EST 2017},
month = {Fri Feb 24 00:00:00 EST 2017}
}

Technical Report:

Save / Share:
  • A multi-institutional project known as D-TEC (short for “Domain- specific Technology for Exascale Computing”) set out to explore technologies to support the construction of Domain Specific Languages (DSLs) to map application programs to exascale architectures. DSLs employ automated code transformation to shift the burden of delivering portable performance from application programmers to compilers. Two chief properties contribute: DSLs permit expression at a high level of abstraction so that a programmer’s intent is clear to a compiler and DSL implementations encapsulate human domain-specific optimization knowledge so that a compiler can be smart enough to achieve good results on specific hardware. Domainmore » specificity is what makes these properties possible in a programming language. If leveraging domain specificity is the key to keep exascale software tractable, a corollary is that many different DSLs will be needed to encompass the full range of exascale computing applications; moreover, a single application may well need to use several different DSLs in conjunction. As a result, developing a general toolkit for building domain-specific languages was a key goal for the D-TEC project. Different aspects of the D-TEC research portfolio were the focus of work at each of the partner institutions in the multi-institutional project. D-TEC research and development work at Rice University focused on on three principal topics: understanding how to automate the tuning of code for complex architectures, research and development of the Rosebud DSL engine, and compiler technology to support complex execution platforms. This report provides a summary of the research and development work on the D-TEC project at Rice University.« less
  • The project developed a domain specific translator enable legacy MPI source code to tolerate communication delays, which are increasing over time due to technological factors. The translator performs source-to-source translation that incorporates semantic information into the translation process. The output of the translator is a C program runs as a data driven program, and uses an existing run time to overlap communication automatically
  • The goal of this paper is to highlight the challenges in providing scalable tool support on exascale class machines and to identify key research and development needs as well as opportunities to meet these challenges. In this context we define tool support very broadly as software that helps programmers to understand, optimize and fix their codes as well as software that facilitates interaction between application, run-time, and hardware. This includes tools for performance analysis, static and run-time optimization, debugging, correctness verification and program transformation. This paper is intended as background material for the ASC exascale workshop, held in March 2011more » in San Francisco, to stimulate discussion both within the tools area and across working groups. Further, this paper targets both the issues and requirements users have on tools in the exascale era as well as the requirements that need to be fulfilled by exascale systems to build scalable tools.« less
  • Descriptions of several routines designed to support and extend FORTRAN programs used on the IBM 360/370 series computers are included in this document. These routines, which have been used in a variety of programs, run the gamut from input processors to timers, to absolute address accessors, to mathematical analysis routines. Most of the routines are written in IBM 360/370 Assembler Language.