Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “compilation”

Search indexed NASA NTRS and DOE OSTI research on propulsion, heat transfer, battery materials and energy systems. Follow report and document links to the original sources.

Quote a phrase for an exact phrase match. Source license links do not imply unrestricted reuse.

At least 811 records · Page 45

XPlacer Machine Learning Guided Data Placement

XPlacer Machine Learning Guided Data Placement uses machine learning model to assist programmers to select the data placement advises for application running on HPC system with Nvidia GPUs. XPlacer Machine Learning Guided Data Placement consists three components: (1) 4 revised benchmarks from Rodinia benchmarks; (2) compiler script and execution script to generate variants, and collect training data for the machine learning model; (3) the scripts to post-process the collected data and generate the machine leaning model.

Liao, Chunhua↗

R-Stream 3.22.3-DOE

R-stream release 3.22.3 including the Glow and TVM front-ends, and the features developed in the Portacy 2B, X-MAT and STAPL projects. R-Stream is an automatic parallelization, source-to-source compiler. The TVM and Glow front-ends to R-Stream were developed to automatically map neural net models to parallel computers using openMP and CUDA (for Glow).

Meister, Benoit↗

BinFPE

BinFPE is a tool that detects floating-point exceptions (NaN, infinity, and subnormal quantities) in NVIDIA GPU applications using binary instrumentation. It requires no re-compilation of the application and can analyze libraries. The tool extends NVBit (https://github.com/NVlabs/NVBit), which is provided by NVIDIA Labs to analyze binaries. When the tool detects a floating-point exception it reports to the user the location of the exception (file and line number).

Laguna Peralta, Ignacio↗

Fast Sparse-Vector Cosine Similarity in Go

This software provides a fast way to perform efficient sparse matrix multiplication followed by top-n multiplication result selection. Functionality for performing matrix multiplication / cosine similarity separately is included in this package as well. This package is a pure Go port of a Python package developed by ING Bank (https://github.com/ing-bank/sparse_dot_topn) which uses Cython to execute the matrix multiplication in C++. Instructions for compiling bindings which can be called from Python are included with this package as well.

Shivers, Ryan [Oak Ridge National Lab. (ORNL), Oak↗

Fugu v.0.1

SAND2021-15052 O Fugu provides a common software framework for designing and prototyping algorithms for spiking neuromorphic hardware and compiling to multiple hardware platforms. Sandia National Laboratories is a multimission laboratory managed and operated by National Technology & Engineering Solutions of Sandia, LLC, a wholly owned subsidiary of Honeywell International Inc., for the U.S. Department of Energy’s National Nuclear Security Administration under contract DE-NA0003525.

Aimone, James↗

ODI notebook additive_manufacturing_video_2022

Additive Manufacturing, video dataset Two-photon lithography (TPL) is a widely used 3D nanoprinting technique that uses laser light to create objects. Challenges to large-scale adoption of this additive manufacturing method include identifying light dosage parameters and monitoring during fabrication. A research team from LLNL, Iowa State University, and Georgia Tech is applying machine learning models to tackle these challenges-i.e., accelerate the process of identifying optimal light dosage parameters and automate the detection of part quality. Funded by LLNL's Laboratory Directed Research and Development Program, the project team has curated a video dataset of TPL processes for parameters such as light dosages, photo-curable resins, and structures. Both raw and labeled versions of the datasets are available on the links in the Open Data Initiative page. The code uses the labeled dataset. Notebook compiled by Nisha Mulakken (mulakken1@llnl.gov) for LLNL Open Data Initiative, Summer 2022. Original code provided by research team. Publications: X.Y. Lee, S.K. Saha, S. Sarkar, B. Giera. "Automated detection of part quality during two-photon lithography via deep learning." Additive Manufacturing 36, December 2020: doi.org/10.1016/j.addma.2020.101444 X.Y. Lee, S.K. Saha, S. Sarkar, B. Giera. "wo Photon lithography additive manufacturing: Video dataset of parameter sweep of light dosages, photo-curable resins, and structures." Data in Brief 32, October 2020. doi.org/10.1016/j.dib.2020.106119.

Mulakken, NishaJ↗

UEDGE toolbox

The UEDGE Toolbox supplies an object-based interface and a wide array of tools used for running and analyzing UEDGE simulations. The toolbox provides routines for setting up UEDGE cases using YAML input files, shorthand commands for restoring converged solutions, as well as plotting profiles and surface plots of any of the parameters in UEDGE. Furthermore, the toolbox provides the necessary objects for compiling and analyzing parameter scans consisiting of several UEDGE simulations.

Holm, AndreasM↗

libjustify

The libjustify library allows dynamic justification of tabular data in native C. Existing formatting support requires a compile-time commitment to worst-case column widths or complex handcrafted solutions. With libjustify, tabular data is transformed from long, machine-readable format into a human-readable format.

Rountree, BarryL↗

Caffeine v0.1.0

Caffeine is the CoArray Fortran Framework of Efficient Interfaces to Network Environments. Caffeine aims to produce a parallel runtime library that will support Fortran compilers with a programming-model-agnostic application binary interface (ABI) to various lower-level communication libraries. The current version of Caffeine uses the GASNet-EX networking middleware, also developed at Berkeley Lab. On many combinations of applications and platforms, GASNet-EX outperforms the widely used Message Passing Interface (MPI). Through GASNet-EX's support for communicating between graphics processing units (GPU), GASNet-EX has features that specifically target the emerging, leading-edge exascale computing platforms.

Rouson, Damian↗

ROSE LCOM Tools

This project provides a tool to compute LCOM metrics for important Ada abstraction mechanisms (e.g., packages, protected objects). It analyzes data accesses and routine calls to compute an abstract representation of an Ada package (or some other abstraction). Different LCOM metrics (1-5) are computed from the abstract representation. The project also provides support for representing the abstraction graphically (via graphviz). The LCOM tool requires an existing ROSE installation configured with the GNAT 2019 compiler.

Lamar, KennethM↗

SurFE-XD (Surface curvature-driven Finite Elements model for Diffusion under eXtreme conditions)

SurFE-XD is a mesoscale finite element framework to model surface diffusion under mutliphysics environments. The code uses legacy C++ library dolphin wrapped with python in a FEniCS driven unified form language and just-in-time (JIT) compilation setting. The purpose of the release is to attract wide-ranging usage of the code along with publication supplementation to support reproducibility of scientific data. SurFE-XD has been originally conceived under the LDRD-DR funding for “High-Gradient (C-BAND) Breakdown tolerant accelerator materials project. Currently SrFE-XD support electrostatics and Thermo-elasticity driven surface diffusion kernels. Releasing the code will also enable to include contributions from other physical regimes e.g., plasticity and electrodynamics etc as well portability to GPU-based platforms.

Bagchi, Soumendu↗

PV O&M Cost Model [SWR-21-14]

This tool presents a method for calculating costs associated with the operation and maintenance (O&M) of photovoltaic (PV) systems. The tool compiles details regarding the cost and frequency of multiple O&M services to estimate annual O&M costs ($/year) for each year of an analysis period, the net present value ($) of life cycle costs accumulated over the analysis period, and the reserve account amount ($) that might be required to fund unexpected repairs. The reserve account includes parts inventory and is important for providing a source of funds to make repairs quickly and avoid lost production. This method allows a detailed selection of services to perform based on system size, market served (e.g., residential, commercial, or utility), type and configuration of system components (e.g., micro-, string, or central inverter), and site and environmental conditions (e.g., pollen, bird populations) which is an improvement over simple per unit valuations of O&M costs ($/kW/year). This model also distinguishes costs that vary from year to year and increase at different rates over time as modeled by heuristic failure distributions (e.g., Weibull or Lognormal distribution) based on actuarial data for many of the services.

Walker, Andy↗

coloring v.1.0

SAND2024-02435O The software coloring allows applications written in the C++ language to generate publication-quality 2D plots. Its functionality is similar to Microsoft Excel's chart functionality or the Python language's matplotlib package. The value of coloring is that it is written purely in C++ and thus can be compiled on systems where Python is not available and linked into high performance computing software. For drawing shapes onto an image, coloring uses the mathematical definition of quadratic Bezier splines and uses Newton's method to search for the closest point on a spline to a given query point. This is then used to do accurate sub-pixel sampling to get clean, non-pixelated images. For working with the actual plot data, coloring has basic statistical methods such as finding maxima and minima as well as axis scaling such as logarithms. Sandia National Laboratories is a multimission laboratory managed and operated by National Technology & Engineering Solutions of Sandia, LLC, a wholly owned subsidiary of Honeywell International Inc., for the U.S. Department of Energy’s National Nuclear Security Administration under contract DE-NA0003525.

Ibanez, Daniel↗

ThunderBoltz API

The ThunderBoltz application programming interface (API) code is written in Python and is comprised of a set of tools to facilitate compilation of the ThunderBoltz code, as well as fast assembly and formatting of input files for the ThunderBoltz code, post-processing tools of ThunderBoltz results, plotting tools, and runs/schedules the ThunderBoltz code executable for calculations. The ThunderBoltz API code is utilized for importing and manipulating input cross section sets, input conditions, and any other simulation settings made available within the ThunderBoltz input deck via user-defined settings or via automatic generation. The API comes with a set of plotting capabilities of input cross sections, results from ThunderBoltz, and post-processed results carried out with the API.

Park, Ryan↗

Parsnip Parser Creation Application

Parsnip has three parts. The first part is the front-end user experience. The front end will be a graphical representation of the intermediate language. Once a user is satisfied with the information on the front end, Parsnip translates the data from the visual application into the second part of Parsnip - the intermediate language. More advanced users may skip the front end and generate their own intermediate language files. The final part is the backend which takes the intermediate language files and generates Zeek and Spicy code. Parsnip will not completely replace parser developers. Many protocols have unique challenges requiring manual effort; however, the goal of Parsnip is to automate at least 90% of the development that largely consists of repetitive tasks. Parsnip output will compile a functioning parser but may not include all PDU types or parse all data.

Huddleston, TimothyA.↗

Scribe Network API v.1.0.0

SAND2023-07864O Scribe Network API is an add-on tool for Scribe3D software. Scribe Network API documents tabletop exercises in trainings and plays back simulated videos of the scenarios and responses. Users can apply the software to compiled projects, or to a simple visual studio project solution package. The software runs a web application that relays information between computers using Scribe3D through a web application, or web app. The web app involves a representational state transfer (REST) application programming interface that handles sending and receiving Scribe save files and an SQL server that stores the save files. This follow-on package allows users to facilitate a networked tabletop exercise. Sandia National Laboratories is a multimission laboratory managed and operated by National Technology & Engineering Solutions of Sandia, LLC, a wholly owned subsidiary of Honeywell International Inc., for the U.S. Department of Energy’s National Nuclear Security Administration under contract DE-NA0003525.

Noel, Todd↗

Fusion Neutron Generator

The proposed code, named FROG (Fusion neutron Generator) is built upon the open-source particle transport Monte Carlo toolkit Geant4. Geant4 provides C++ classes that can be leveraged to build application-specific codes dealing with the transport of particles through matter. Geant4-based codes are applied in high-energy particle physics experiments, medical applications, shielding, and space applications for example. The FROG code allows the user to define the geometry of a neutron converter device shaped as a hollow cylinder, where a neutron breeding material such as lithium deuteride (LiD) is cladded by two concentric cylinders. Such neutron converter is then placed inside a regular nuclear fission reactor, where thermal neutrons will react with the neutron breeder material (typically, Lithium 6), and through a series of reactions, will generate high-energy neutrons – neutrons whose kinetic energy are around 14 MeV. The hollowed central portion can hold a specimen that will be bombarded by high-energy neutrons created inside the neutron breeding material. Figuratively speaking, this type of device transforms neutrons from thermal (~0.625 eV) to fusion (~14 MeV) energies and is sometimes termed “fusion-to-thermal neutron converters” in the literature. The code consists of C++ source file compiled and linked to generate an executable. The user can select the dimensions of the converter (radius, length, and thickness of the breeder material), the breeder material type, the cladding material, and the specimen material that will be activated or irradiated. As input, the neutron flux for a specific location inside a reactor, for instance, positions in ATR, is required. As output, the code predicts the number of high-energy neutrons produced, the total neutron flux and fluence as well as its detailed spectrum. The physics involved in such device is very complex, as it requires modeling neutron transport, light-ion (tritons) transport, as well as fusion reactions. The Geant4 toolkit provides the required physical models.

Martin, NicholasP. [Idaho National Laboratory (INL↗