Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “Software Library”

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 883 records · Page 49

Portable HCAL reconstruction in the CMS detector using the Alpaka library

CMS has deployed a number of different GPU algorithms at the High-Level Trigger (HLT) in Run 3. As the code base for GPU algorithms continues to grow, the burden for developing and maintaining separate implementations for GPU and CPU becomes increasingly challenging. To mitigate this, CMS has adopted the Alpaka (Abstraction Library for Parallel Kernel Acceleration) library as the performance portability solution to provide a single-code base for parallel execution on both GPUs and CPUs in CMS software (CMSSW). A direct CUDA version of HCAL energy reconstruction, called Minimization At Hcal, Iteratively (MAHI), has been deployed at the HLT in the 2022-2023 data taking period. This contribution will describe how the CUDA version is converted into a portable implementation using the Alpaka library. We will discuss the porting experience from CUDA to Alpaka, the validation process and the performance of the Alpaka version in CPU and GPU.

Kwok, Martin↗

Information Extraction for System-Software Safety Analysis: Calendar Year 2007 Year-End Report

This annual report describes work to integrate a set of tools to support early model-based analysis of failures and hazards due to system-software interactions. The tools perform and assist analysts in the following tasks: 1) extract model parts from text for architecture and safety/hazard models; 2) combine the parts with library information to develop the models for visualization and analysis; 3) perform graph analysis on the models to identify possible paths from hazard sources to vulnerable entities and functions, in nominal and anomalous system-software configurations; 4) perform discrete-time-based simulation on the models to investigate scenarios where these paths may play a role in failures and mishaps; and 5) identify resulting candidate scenarios for software integration testing. This paper describes new challenges in a NASA abort system case, and enhancements made to develop the integrated tool set.

Malin, Jane T.↗

Information Extraction for System-Software Safety Analysis: Calendar Year 2008 Year-End Report

This annual report describes work to integrate a set of tools to support early model-based analysis of failures and hazards due to system-software interactions. The tools perform and assist analysts in the following tasks: 1) extract model parts from text for architecture and safety/hazard models; 2) combine the parts with library information to develop the models for visualization and analysis; 3) perform graph analysis and simulation to identify and evaluate possible paths from hazard sources to vulnerable entities and functions, in nominal and anomalous system-software configurations and scenarios; and 4) identify resulting candidate scenarios for software integration testing. There has been significant technical progress in model extraction from Orion program text sources, architecture model derivation (components and connections) and documentation of extraction sources. Models have been derived from Internal Interface Requirements Documents (IIRDs) and FMEA documents. Linguistic text processing is used to extract model parts and relationships, and the Aerospace Ontology also aids automated model development from the extracted information. Visualizations of these models assist analysts in requirements overview and in checking consistency and completeness.

Malin, Jane T.↗

Automation for System Safety Analysis

This presentation describes work to integrate a set of tools to support early model-based analysis of failures and hazards due to system-software interactions. The tools perform and assist analysts in the following tasks: 1) extract model parts from text for architecture and safety/hazard models; 2) combine the parts with library information to develop the models for visualization and analysis; 3) perform graph analysis and simulation to identify and evaluate possible paths from hazard sources to vulnerable entities and functions, in nominal and anomalous system-software configurations and scenarios; and 4) identify resulting candidate scenarios for software integration testing. There has been significant technical progress in model extraction from Orion program text sources, architecture model derivation (components and connections) and documentation of extraction sources. Models have been derived from Internal Interface Requirements Documents (IIRDs) and FMEA documents. Linguistic text processing is used to extract model parts and relationships, and the Aerospace Ontology also aids automated model development from the extracted information. Visualizations of these models assist analysts in requirements overview and in checking consistency and completeness.

Malin, Jane T.↗

A Framework for Lattice QCD Calculations on GPUs

Efficient calculation of the greatest common divisor (GCD) for big integers each whose number of bits is greater than or equal to 1024 has drawn a considerable amount of attention because it can be used to detect a weakness of the RSA security infrastructure. This paper presents a parallel binary GCD algorithm and its implementation for big integers on the Intel Xeon Phi coprocessor. This algorithm is capable of computing GCDs efficiently on many pairs of big integers in parallel by utilizing all cores on a Xeon Phi coprocessor as well as taking advantage of all vector processing units of the coprocessor to speed up critical integer operations within the algorithm. Using 240 threads on a Xeon Phi coprocessor to carry out GCD calculations for a large amount of 2048-bit integers, the implementation achieves the speedup of 30 times over a sequential binary GCD algorithm implementation on a single CPU core, and it delivers twice amount of performance in comparison to the same sequential binary GCD implementation running on 240 threads of the Xeon Phi.

Winter, F. T.↗

Coupling subsurface and above-surface models for optimizing the design of borefields and district heating and cooling systems in the presence of varying water-table depth. In: Proceedings, 46th Workshop on Geothermal Reservoir Engineering

Dynamic energy simulation is important for the design and sizing of district heating and cooling systems with geothermal heat exchange. Current modeling approaches in building and district energy simulation tools typically consider heat conduction through the ground between boreholes, without flow of groundwater. On the other hand, detailed simulation tools for subsurface heat and mass transfer exist, but these fall short in simulating above-surface energy systems. To support the design and operation of such systems, we have developed a coupled model including a software package for building and district energy simulation, and software for detailed heat and mass transfer in the ground. For the first, we use the open-source Modelica Buildings Library, which includes dynamic simulation models for building and district energy and control systems. For the heat and mass transfer in the soil, we use the TOUGH simulator. TOUGH can model heat and multi-phase, multi-component mass transport for a variety of fluid systems, as well as chemical reactions, in fractured porous media. In previous work, we described the coupling of these software packages, including how time-dependent boundary conditions for the borehole walls are synchronized for use in Modelica and TOUGH. We verified that the coupled Modelica/TOUGH code produced consistent results with the original Modelica code for an idealized problem in which heat transfer was purely by conduction in a uniform geologic medium. Here, we examine less idealized problems for which TOUGH’s advanced capabilities for modeling fluid flow are required. The first problem has a shallow vadose zone, and the second problem has a thicker vadose zone with a water-table depth that varies in time, which requires a fine vertical grid discretization for the TOUGH model.

Doughtry, Christine↗

Providing performance portable numerics for Intel GPUs

Summary With discrete Intel GPUs entering the high‐performance computing landscape, there is an urgent need for production‐ready software stacks for these platforms. In this article, we report how we enable the Ginkgo math library to execute on Intel GPUs by developing a kernel backed based on the DPC++ programming environment. We discuss conceptual differences between the CUDA and DPC++ programming models and describe workflows for simplified code conversion. We evaluate the performance of basic and advanced sparse linear algebra routines available in Ginkgo's DPC++ backend in the hardware‐specific performance bounds and compare against routines providing the same functionality that ship with Intel's oneMKL vendor library.

97 MATHEMATICS AND COMPUTING↗

Warp-X: A new exascale computing platform for beam–plasma simulations

Turning the current experimental plasma accelerator state-of-the-art from a promising technology into mainstream scientific tools depends critically on high-performance, high-fidelity modeling of complex processes that develop over a wide range of space and time scales. As part of the U.S. Department of Energy's Exascale Computing Project, a team from Lawrence Berkeley National Laboratory, in collaboration with teams from SLAC National Accelerator Laboratory and Lawrence Livermore National Laboratory, is developing a new plasma accelerator simulation tool that will harness the power of future exascale supercomputers for high-performance modeling of plasma accelerators. We present the various components of the codes such as the new Particle-In-Cell Scalable Application Resource (PICSAR) and the redesigned adaptive mesh refinement library AMReX, which are combined with redesigned elements of the Warp code, in the new WarpX software. Lastly, the code structure, status, early examples of applications and plans are discussed.

43 PARTICLE ACCELERATORS↗

Solidify, An LLVM pass to compile LLVM IR into Solidity

The software currently compiles LLVM IR into Solidity (Ethereum’s dominant programming language) using LLVM’s pass library. Specifically, his compiler allows us to convert an arbitrary DSL into Solidity. We focus specifically on converting Domain Specific Languages into Solidity due to their ease of use, and provable properties. By creating a toolchain to compile lightweight domain-specific languages into Ethereum's dominant language, Solidity, we allow non-specialists to effectively develop safe and useful smart contracts. For example lawyers from a certain firm can have a proprietary DSL that codifies basic laws safely converted to Solidity to be securely executed on the blockchain. In another example, a simple provenance tracking language can be compiled and securely executed on the blockchain.

Kothapalli, Abhiram↗

Many-Body Adaptive Configuration Interaction Suite (MACIS) v0.1.0

The Many-Body Adaptive Configuration Interaction Suite (MACIS) is a modern C++ software infrastructure for the development of selected-configuration interaction (sCI) methods for the fermionic many-body problem in quantum chemistry and materials science. MACIS provides a high-performance, parallel implementation of the Adaptive Sampling Configuration Interaction (ASCI) method as related solvers such as self-consistent orbital optimization and the evaluation of excited states and spectral functions. Unlike existing sCI software, MACIS is developed as a modular software infrastructure which allows it to exist both as a standalone sCI solver and as a library to integrate into existing many-body codes. This modularity allows MACIS to be quickly extensible, including its integration with other sCI methods and high-performance solvers.

Williams-Young, David↗

Polaris Studio

SF-24-040 Polaris-studio is the Python entry point/front end for using the Polaris transportation simulator. The package contains the code used to create new models from open and user-provided data, an extensive range of convenience tools for data preparation and result analysis and the ability of designing, launching and tracking studies combining multiple individual Polaris simulations from a Python terminal. The Polaris Studio software contains several modules for accomplishing the above tasks, including the PolarisLib - the Polaris object model, Polaris Manager - code for setting up and running Polaris studies, QPOLARIS - an add-on for the QGis software to allow model files to be created and edited, PolarisVis - a juptyer-based postprocessing library, and Polaris Tools - a useful collection of supplemental tools for interacting with Polaris files.

Auld, Joshua↗

Status Report on NEAMS System Analysis Module Development

Under the Reactor Product Line (RPL) of DOE-NE’s Nuclear Energy Advanced Modeling and Simulation (NEAMS) program, an advanced SFR System Analysis Module (SAM) is being developed at Argonne National Laboratory. The goal of the SAM development is to provide fast-running, improved-fidelity, whole-plant transient analyses capabilities. SAM utilizes an object-oriented application framework MOOSE), and its underlying meshing and finite-element library libMesh, as well as linear and non-linear solvers PETSc, to leverage modern advanced software environments and numerical methods. It also incorporates advances in physical and empirical models and seeks closure models based on information from high-fidelity simulations and experiments. This report provides an update on the SAM development, and summarizes the activities performed in FY15 and the first quarter of FY16. The tasks include: (1) implement the support of 2nd-order finite elements in SAM components for improved accuracy and computational efficiency; (2) improve the conjugate heat transfer modeling and develop pseudo 3-D full-core reactor heat transfer capabilities; (3) perform verification and validation tests as well as demonstration simulations; (4) develop the coupling requirements for SAS4A/SASSYS-1 and SAM integration.

21 SPECIFIC NUCLEAR REACTORS AND ASSOCIATED PLANTS↗

Simulation-based Testing of Control Software

It is impossible to adequately test complex software by examining its operation in a physical prototype of the system monitored. Adequate test coverage can require millions of test cases, and the cost of equipment prototypes combined with the real-time constraints of testing with them makes it infeasible to sample more than a small number of these tests. Model based testing seeks to avoid this problem by allowing for large numbers of relatively inexpensive virtual prototypes that operate in simulation time at a speed limited only by the available computing resources. In this report, we describe how a computer system emulator can be used as part of a model based testing environment; specifically, we show that a complete software stack including operating system and application software - can be deployed within a simulated environment, and that these simulations can proceed as fast as possible. To illustrate this approach to model based testing, we describe how it is being used to test several building control systems that act to coordinate air conditioning loads for the purpose of reducing peak demand. These tests involve the use of ADEVS (A Discrete Event System Simulator) and QEMU (Quick Emulator) to host the operational software within the simulation, and a building model developed with the MODELICA programming language using Buildings Library and packaged as an FMU (Functional Mock-up Unit) that serves as the virtual test environment.

97 MATHEMATICS AND COMPUTING↗

Using OpenMP for HEP Framework Algorithm Scheduling [Slides]

The OpenMP standard is the primary mechanism used at high performance computing facilities to allow intra-process parallelization. In contrast, many HEP specific software (such as CMSSW, GaudiHive, and ROOT) make use of Intel's Threading Building Blocks (TBB) library to accomplish the same goal. In this talk we will discuss our work to compare TBB and OpenMP when used for scheduling algorithms to be run by a HEP style data processing framework (i.e. running hundreds of interdependent algorithms at most once for each event read from the detector). This includes both scheduling of different algorithms to be run concurrently as well as scheduling concurrent work within one algorithm. As part of the discussion we present an overview of the OpenMP threading model. We also explain how we used OpenMP when creating a simplified HEP-like processing framework. Using that simplified framework, and a similar one written using TBB, we will present performance comparisons between TBB and different compiler versions of OpenMP.

73 NUCLEAR PHYSICS AND RADIATION PHYSICS↗

Space Environments and Effects: Trapped Proton Model

An improved model of the Earth's trapped proton environment has been developed. This model, designated Trapped Proton Model version 1 (TPM-1), determines the omnidirectional flux of protons with energy between 1 and 100 MeV throughout near-Earth space. The model also incorporates a true solar cycle dependence. The model consists of several data files and computer software to read them. There are three versions of the mo'del: a FORTRAN-Callable library, a stand-alone model, and a Web-based model.

Huston, S. L.↗

SATPLOT for Analysis of SECCHI Heliospheric Imager Data

Determining trajectories of solar transients such as coronal mass ejections is not always easy. White light images from SECCHI's (Sun Earth Connection Coronal and Heliospheric Investigation) heliospheric imagers are difficult to interpret because they represent a line-of-sight projection of optically thin solar wind structures. A structure's image by itself gives no information about its angle of propagation relative to the Sunspacecraft line, and an image may show a superposition of several structures, all propagating at different angles. Analyzing SECCHI heliospheric imager data using plots of elongation (angle from the Sun) versus time at fixed position angle (aka Jplots ) has proved extremely useful in understanding the observed solar wind structures. This technique has been used to study CME (coronal mass ejection) propagation, CIRs (corotating interaction regions), and blobs. SATPLOT software was developed to create and analyze such elongation versus time plots. The tool uses a library of cylindrical maps of the data for each spacecraft s panoramic field-of-view. Each map includes data from three SECCHI white-light telescopes (the COR2 coronagraph and both heliospheric imagers) at one time for one spacecraft. The maps are created using a Plate Carree projection, optimized for creating the elongation versus time plots. The tool can be used to analyze the observed tracks of features seen in the maps, and the tracks are then used to extract information, for example, on the angle of propagation of the feature.

Hall, Jeffrey R.↗

Environment Modeling Using Runtime Values for JPF-Android

Software applications are developed to be executed in a specific environment. This environment includes external native libraries to add functionality to the application and drivers to fire the application execution. For testing and verification, the environment of an application is simplified abstracted using models or stubs. Empty stubs, returning default values, are simple to generate automatically, but they do not perform well when the application expects specific return values. Symbolic execution is used to find input parameters for drivers and return values for library stubs, but it struggles to detect the values of complex objects. In this work-in-progress paper, we explore an approach to generate drivers and stubs based on values collected during runtime instead of using default values. Entry-points and methods that need to be modeled are instrumented to log their parameters and return values. The instrumented applications are then executed using a driver and instrumented libraries. The values collected during runtime are used to generate driver and stub values on- the-fly that improve coverage during verification by enabling the execution of code that previously crashed or was missed. We are implementing this approach to improve the environment model of JPF-Android, our model checking and analysis tool for Android applications.

Verification↗

CRISTAL V2: New package for criticality calculations

A new release of the CRISTAL French criticality calculation package, named CRISTAL V2, has been developed and intensively validated by IRSN and CEA, in collaboration with AREVA. This package was designed to cover the needs of criticality practitioners in the fields of nuclear fuel cycle facilities and transportation of fissile materials. Based on an optimized modular architecture in an updated software development environment, the design of CRISTAL package V2 integrates new generation of cross-section libraries, new calculation schemes consistent with new applications, and up-to-date calculation codes capabilities. Four calculation routes are currently available allowing multi-group and continuous energy calculations. The validation database is composed of more than 3000 critical experiments, in order to cover a wide range of configurations. The CRISTAL V2 package also includes customer services covering a large scope of activities like documentations, hotline, maintenance and training courses. A significant promotion and an increased recognition referred both nationally and internationally are foreseen, including the provision of the CRISTAL V2 package to the OECD / NEA Data Bank. (authors)

11 NUCLEAR FUEL CYCLE AND FUEL MATERIALS↗