The barrier to entry creating efficient, scalable applications for heterogeneous supercomputing environments is too high. EM Photonics has found that the majority of the coding and debugging time is not spent defining the problem physics but instead on balancing computation between multiple heterogeneous devices, handling communication of data, and managing distributed memory systems. The time spent improving, modifying, or debugging device specific code paths and common code sections could be better spent improving kernel performance or adding new features. To address the problem of separating physical science from computing science, we have been developing a solution that decouples the problem definition from the platform-specific implementation details by expressing algorithms as a series of tasks and data dependencies and handing it off to a managed runtime that efficiently partitions and schedules the problem tasks for execution. We have proven this technique in the field of linear algebra, and in this project we will bring these benefits to mission critical NASA solvers. In this SBIR, we will construct a powerful system that, by virtue of decoupling algorithms from dispatch and execution, will be suited for both current and upcoming computer architectures. Writing a new application will require only an understanding of the algorithm to be implemented, and abstracts away details of heterogeneous resource management and scheduling, thereby removing this responsibility from the scientists that develop this software. Our solution will provide future compatibility, as going to a new version of the same hardware involves no changes and adding new hardware types will require only writing specialized computational kernels. Higher performance is attained because the scheduler will adjust the software's execution based on factors such as the hardware availability and its current performance, as well as the run-time characteristics of the program's execution.