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

Title: Inference-Engine v0.1.0

Software ·
DOI:https://doi.org/10.11578/dc.20230713.5· OSTI ID:1989444 · Code ID:109794
 [1];  [1];  [1]
  1. Lawrence Berkeley National Laboratory (LBNL), Berkeley, CA (United States)

Given a pre-trained neural network, Inference-Engine performs maps network inputs to outputs by executing the forward pass through the provided network. Although the predominant programming language for machine-learning is Python, most high-performance computing (HPC) applications are written in Fortran, C, or C++. Inference-Engine aims to support HPC programs and is written in Fortran, a language with a large feature set supporting interoperability with C. This software exposes concurrency in a portable way by using standard language features that some modern Fortran compilers can exploit with various optimizations, including offloading computation to a Graphics Processing Unit (GPU). In particular, this software makes extensive use of Fortran's "do concurrent" parallel loop construct, implicitly parallel array statements, and pure procedures that can be invoked inside "do concurrent" blocks. Inference-Engine also supports dynamic choice of inference methods at runtime. Two current options include one method that uses Fortran's "dot_product" intrinsic function inside "do concurrent" blocks and another method that instead uses Fortran' "matmul" array intrinsic function. We plan to investigate automatic compiler offloading of "do concurrent" calculations to GPUs and compile-time substitution of optimized libraries such as the Basic Linear Algebra Library (BLAS) for "matmul" invocations. We also envision the potential for the choice of which method to use could happen at program launch based on in situ performance measurements on any given platform.

Project Type:
Open Source, Publicly Available Repository
Site Accession Number:
2023-007
Software Type:
Scientific
License(s):
BSD 3-clause "New" or "Revised" License
Research Organization:
Lawrence Berkeley National Laboratory (LBNL), Berkeley, CA (United States)
Sponsoring Organization:
USDOE

Primary Award/Contract Number:
AC02-05CH11231
DOE Contract Number:
AC02-05CH11231
Code ID:
109794
OSTI ID:
1989444
Country of Origin:
United States

Similar Records

Application Experiences on a GPU-Accelerated Arm-based HPC Testbed
Conference · Wed Feb 01 00:00:00 EST 2023 · OSTI ID:1989444

Software-Driven Network Architecture for Synchronous Data Acquisition
Technical Report · Fri Jul 10 00:00:00 EDT 2020 · OSTI ID:1989444

Bringing heterogeneity to the CMS software framework
Journal Article · Mon Nov 16 00:00:00 EST 2020 · EPJ Web of Conferences (Online) · OSTI ID:1989444

Related Subjects