GGrantIndex
← Search

CAREER: Filling the Gaps in Domain-Specific Functional-Based Solutions for High-Performance Execution

$553,182FY2014CSENSF

University Of Kansas Center For Research Inc, Lawrence KS

Investigators

Abstract

Physicists, meteorologists, and other users of high-performance computing want to write large and complicated models and systems that execute correctly and quickly. These models and systems are allowing us to understand our world better, and explore solutions to hard problems. Unfortunately, to make efficient use of computing resources, a non-computing specialist needs to, for all intents and purposes, become a proficient computer scientist. The fundamental problem is that a non-computing specialist is not necessarily aware of available options for optimizing their model. Domain Specific Languages (DSLs) are one possible solution to this knowledge gap, because DSLs can encode the necessary knowledge required to map programs onto high-performance targets, at the same time to provide a customized environment in the parlance of the domain specialist. By utilizing a DSL, the non-specialist does not need to worry about performance at the outset; it is the responsibility of the DSL compiler to map the model onto the high-performance target. This research will produce new DSL techniques and technologies that will substantially lower the cost of developing such high-performance DSLs, as well as improve the performance opportunities offered to users. Over the five-year span of the project, two specific high-performance parallel platforms (GPGPUs and FPGAs) will be made more accessible. A resource-aware DSL will allow a broad range of parallel programming idioms to be directly expressed. This resource-aware DSL will also work in combination with existing DSLs. With the use of rewriting technologies, the resource-aware DSL will act as an expressive common medium for exploring design tradeoffs before, during and after the commitment to specific implementation technologies. A set of custom compiler plugins will allow translation into existing development environments and tools for GPGPUs and FPGAs. As programming continues to migrate from being the task of the general programmer into the hands of domain specialists, the broader impact of this research is lowering the performance-related knowledge burden on the domain specialist, and more generally, supporting the use of specialists by pushing the state-of-the-art in DSL design and implementation. The principal intellectual merit of this research is the challenge of creating the generic DSL that supports post-hoc and resource-aware on-the-fly refactoring on user models. This new DSL will inform future high-performance DSL compilers, and open opportunities for customized DSLs and the domain specialist working together to find implementations that execute correctly and quickly.

View original record on NSF Award Search →