NASA SBIR 2020-I Solicitation

Proposal Summary

 20-1- S5.01-5983
 Technologies for Large-Scale Numerical Simulation
 Ecosystem for Early Feedback-Driven HEC Code Development
SMALL BUSINESS CONCERN (Firm Name, Mail Address, City/State/Zip, Phone)
RNET Technologies, Inc.
240 West Elmwood Drive, Suite 2010
Dayton, OH 45459
(937) 433-2886

Principal Investigator (Name, E-mail, Mail Address, City/State/Zip, Phone)

Dr. Gerald Sabin
240 West Elmwood Drive, Suite 2010 Dayton, OH 45459 - 4248
(937) 433-2886

Business Official (Name, E-mail, Mail Address, City/State/Zip, Phone)

V Nagarjan
240 West Elmwood Drive, Suite 2010 Dayton, OH 45459 - 4248
(937) 433-2886
Estimated Technology Readiness Level (TRL) :
Begin: 1
End: 3
Technical Abstract (Limit 2000 characters, approximately 200 words)

PerfDev is an intuitive, full featured and collaborative automated optimization and code analysis framework that promotes and enables on-the-fly performance optimization of advanced scientific applications to maximize code development and application efficiency.


The PerfDev software development and optimization framework enables stateful runtime decomposition and passive exploration of code blocks. PerfDev will enable advanced parameter space exploration using deep learning. Instead of waiting to evaluate application performance at the end of a full development cycle, PerfDev will enable real-time performance feedback loops that facilitate the optimization of individual blocks of code as the application is developed or ported. The production PerfDev APIs will be integrated into multiple production environments (starting with Jupyter in Phase I), will support a range of performance metric tools and hardware (e.g., PAPI/perfcntr, SONAR, Caliper, etc.), and multiple compute languages (e.g., C/C++, Fortran, Python).


Towards that goal, and in an effort to demonstrate the importance, feasibility and usability of the proposed framework, the Phase I effort will focus of the following  objectives in order to develop a functional PerfDev prototype:

  • Code Cell Identification and Automatic Modularization for NASA Applications: Defining application "code cells" is a key component to enable a PerfDev optimization analysis. The code cells are the fundamental unit of evaluation and analysis.
  • Distributed PerfDev Checkpoint-Restart: Checkpoint-restart is a fundamental utility that enables the efficient execution and evaluation of system and application parameters during code development. During Phase I, we will integrate support for MPI-supported application level checkpointing into our C/C++ backend in the PerfDev prototype.
  • PerfDev API for Automation Parameter Space Exploration: We will develop an API to enable passive automatic parameter space exploration of code cells.
Potential NASA Applications (Limit 1500 characters, approximately 150 words)

The PerfDev framework will be beneficial for optimization of HEC/HPC NASA applications that are being developed in C, C++, Fortran, Python and Perl. The tool will aid NASA while developing new applications and porting/optimizing existing applications for new and complex compute architectures.

Software of potential interest to NASA include CFD, CSD, FEM, and other numeric simulation applications and libraries. PerfDev will also lead to an improved software development lifecycle that better meets the current high performance computing environment.

Potential Non-NASA Applications (Limit 1500 characters, approximately 150 words)

Many government agencies, university research groups, and industry researchers are utilizing high performance computing systems and face the same challenges in developing and optimizing codes for new and existing architectures. All of these sectors need an adequate tool to help in optimizing and porting applications to emerging high performing compute systems.

Duration: 6

Form Generated on 06/29/2020 20:59:27