Reservoir Labs, Inc. — Department of Energy SBIR Phase II: 02b

Reservoir Labs, Inc. — SBIR Phase II award from Department of Energy.

Amount
$1,499,995
Agency
Department of Energy
Program / Phase
SBIR · Phase II
Topic
02b
Solicitation
DE-FOA-0001794
NAICS
Place of performance
NY
Period
2018-05-21 → 2020-05-20

Description

Fast evolution of supercomputer architecture lead to an increasingly error-prone, lengthy and costly problem of porting existing applications to new architectures. For a useful category of compute-intensive, loop-based codes such as found in DOE applications, solutions exist that take sequential code and optimize it for modern parallel computers, but these expect a “de-optimized” form as input, which results in users still having to rewrite code. Also they don’t accept some input languages used in most DOE applications, which are written mostly in the C, C++ and Fortran languages, and increasingly using Deep Learning frameworks. Project Objective The main objective is to turn a tool for automatic parallelization of compute-intensive loop-based C sequential codes into a tool that supports more input languages (C, C++ and Fortran) and Deep Learning codes as inputs. Another objective is to enable new optimizations based on data transformations and alternative parallelization in a leading Deep Learning framework. What was done in Phase I? In Phase I, we enhanced the porting tool front-end capabilities to: - enable the intake of a significant subset of C++ (mostly excludes Exceptions and atomics);- carry parallelism-related user annotations semantics through to the polyhedral representation of the program, in whichthe program is optimized;- automatically approximate irregular program constructs such as indirect array accesses;- automatically approximate array accesses performed during function calls -- including library calls -- within parallelizable code regions Commercial Applications and Other Benefits Portacy will provide the immediate benefit of being able to generate versions of applications for new accelerators from sequential and code parallelized using traditional parallel programming models. It will also enhance the performance of distributed Deep Learning codes. The degree to which a larger range of Deep Learning codes will be optimized will also increase with the use of the Portacy tool.