Search NASA⌕ Search

SEARCH · Search NASA

Results for “code modernization”

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 37 records · Page 2

Xyce Parallel Electronic Simulator Users' Guide (V. 7.3)

This manual describes the use of the Xyce Parallel Electronic Simulator. Xyce has been designed as a SPICE-compatible, high-performance analog circuit simulator, and has been written to support the simulation needs of the Sandia National Laboratories electrical designers. This development has focused on improving capability over the current state-of-the-art in the following areas: Capability to solve extremely large circuit problems by supporting large-scale parallel computing platforms (up to thousands of processors). This includes support for most popular parallel and serial computers; A differential-algebraic-equation (DAE) formulation, which better isolates the device model package from solver algorithms. This allows one to develop new types of analysis without requiring the implementation of analysis-specific device models; Device models that are specifically tailored to meet Sandia's needs, including some radiation-aware devices (for Sandia users only); Object-oriented code design and implementation using modern coding practices. Xyce is a parallel code in the most general sense of the phrase—a message passing parallel implementation—which allows it to run efficiently a wide range of computing platforms. These include serial, shared-memory and distributed-memory parallel platforms. Attention has been paid to the specific nature of circuit-simulation problems to ensure that optimal parallel efficiency is achieved as the number of processors grows.

42 ENGINEERING↗

Xyce Parallel Electronic Simulator Users' Guide Version 7.4

This manual describes the use of the Xyce Parallel Electronic Simulator. Xyce has been designed as a SPICE-compatible, high-performance analog circuit simulator, and has been written to support the simulation needs of the Sandia National Laboratories electrical designers. This development has focused on improving capability over the current state-of-the-art in the following areas: • Capability to solve extremely large circuit problems by supporting large-scale parallel computing platforms (up to thousands of processors). This includes support for most popular parallel and serial computers. • A differential-algebraic-equation (DAE) formulation, which better isolates the device model package from solver algorithms. This allows one to develop new types of analysis without requiring the implementation of analysis-specific device models. • Device models that are specifically tailored to meet Sandia’s needs, including some radiation-aware devices (for Sandia users only). • Object-oriented code design and implementation using modern coding practices. Xyce is a parallel code in the most general sense of the phrase — a message passing parallel implementation — which allows it to run efficiently a wide range of computing platforms. These include serial, shared-memory and distributed-memory parallel platforms. Attention has been paid to the specific nature of circuit-simulation problems to ensure that optimal parallel efficiency is achieved as the number of processors grows.

42 ENGINEERING↗

Xyce™ Parallel Electronic Simulator Users' Guide, Version 7.5.

This manual describes the use of the Xyce Parallel Electronic Simulator. Xyce has been designed as a SPICE-compatible, high-performance analog circuit simulator, and has been written to support the simulation needs of the Sandia National Laboratories electrical designers. This development has focused on improving capability over the current state-of-the-art in the following areas: (1) Capability to solve extremely large circuit problems by supporting large-scale parallel computing platforms (up to thousands of processors). This includes support for most popular parallel and serial computers. (2) A differential-algebraic-equation (DAE) formulation, which better isolates the device model package from solver algorithms. This allows one to develop new types of analysis without requiring the implementation of analysis-specific device models. (3) Device models that are specifically tailored to meet Sandia's needs, including some radiation-aware devices (for Sandia users only). (4) Object-oriented code design and implementation using modern coding practices. Xyce is a parallel code in the most general sense of the phrase — a message passing parallel implementation — which allows it to run efficiently a wide range of computing platforms. These include serial, shared-memory and distributed-memory parallel platforms. Attention has been paid to the specific nature of circuit-simulation problems to ensure that optimal parallel efficiency is achieved as the number of processors grows.

97 MATHEMATICS AND COMPUTING↗

Computational Modeling and Simulation for Nonproliferation: The History (and Present) of Monte Carlo and the MCNP(R) Code at Los Alamos [Slides]

The emergence of the Monte Carlo method as a research tool springs from work done at Los Alamos in the 1940s.Monte Carlo and the MCNP Code have been and continue to be developed at Los Alamos for many decades. From basic science in support of understanding nuclear interaction physics to global security applications, application uses of the code are extensive. Recent R&D projects and code modernization efforts make the MCNP code a great tool for nuclear nonproliferation applications. In collaboration with nuclear safeguards experts, new training has just recently been developed to help new practitioners learn how to use the code for nuclear safeguards applications.

97 MATHEMATICS AND COMPUTING↗

Xyce™ Parallel Electronic Simulator Users' Guide (V.7.6)

This manual describes the use of the Xyce™ Parallel Electronic Simulator. Xyce™ has been designed as a SPICE-compatible, high-performance analog circuit simulator, and has been written to support the simulation needs of the Sandia National Laboratories electrical designers. This development has focused on improving capability over the current state-of-the-art in the following areas: (1) Capability to solve extremely large circuit problems by supporting large-scale parallel computing platforms (up to thousands of processors). This includes support for most popular parallel and serial computers. (2) A differential-algebraic-equation (DAE) formulation, which better isolates the device model package from solver algorithms. This allows one to develop new types of analysis without requiring the implementation of analysis-specific device models. (3) Device models that are specifically tailored to meet Sandia's needs, including some radiation-aware devices (for Sandia users only). (4) Object-oriented code design and implementation using modern coding practices. Xyce™ is a parallel code in the most general sense of the phrase—a message passing parallel implementation—which allows it to run efficiently a wide range of computing platforms. These include serial, shared-memory and distributed-memory parallel platforms. Attention has been paid to the specific nature of circuit-simulation problems to ensure that optimal parallel eficiency is achieved as the number of processors grows.

97 MATHEMATICS AND COMPUTING↗

Xyce™ Parallel Electronic Simulator Users’ Guide, Version 7.8

This manual describes the use of the Xyce Parallel Electronic Simulator. Xyce has been designed as a SPICE-compatible, high-performance analog circuit simulator, and has been written to support the simulation needs of the Sandia National Laboratories electrical designers. This development has focused on improving capability over the current state-of-the-art in the following areas: (1) Capability to solve extremely large circuit problems by supporting large-scale parallel computing platforms (up to thousands of processors). This includes support for most popular parallel and serial computers. (2) A differential-algebraic-equation (DAE) formulation, which better isolates the device model package from solver algorithms. This allows one to develop new types of analysis without requiring the implementation of analysis-specific device models. (3) Device models that are specifically tailored to meet Sandia’s needs, including some radiation-aware devices (for Sandia users only). (4) Object-oriented code design and implementation using modern coding practices. Xyce is a parallel code in the most general sense of the phrase — a message passing parallel implementation — which allows it to run efficiently a wide range of computing platforms. These include serial, shared-memory and distributed-memory parallel platforms. Attention has been paid to the specific nature of circuit-simulation problems to ensure that optimal parallel efficiency is achieved as the number of processors grows.

42 ENGINEERING↗

Xyce™ Parallel Electronic Simulator Users' Guide (V.7.9)

This manual describes the use of the Xyce Parallel Electronic Simulator. Xyce has been designed as a SPICE-compatible, high-performance analog circuit simulator, and has been written to support the simulation needs of the Sandia National Laboratories electrical designers. This development has focused on improving capability over the current state-of-the-art in the following areas: • Capability to solve extremely large circuit problems by supporting large-scale parallel computing platforms (up to thousands of processors). This includes support for most popular parallel and serial computers. • A differential-algebraic-equation (DAE) formulation, which better isolates the device model package from solver algorithms. This allows one to develop new types of analysis without requiring the implementation of analysis-specific device models. • Device models that are specifically tailored to meet Sandia’s needs, including some radiation-aware devices (for Sandia users only). • Object-oriented code design and implementation using modern coding practices. Xyce is a parallel code in the most general sense of the phrase — a message passing parallel implementation — which allows it to run efficiently a wide range of computing platforms. These include serial, shared-memory and distributed-memory parallel platforms. Attention has been paid to the specific nature of circuit-simulation problems to ensure that optimal parallel efficiency is achieved as the number of processors grows.

42 ENGINEERING↗

Xyce™ Parallel Electronic Simulator Users’ Guide, Version 7.10

This manual describes the use of the Xyce Parallel Electronic Simulator. Xyce has been designed as a SPICE-compatible, high-performance analog circuit simulator, and has been written to support the simulation needs of the Sandia National Laboratories electrical designers. This development has focused on improving capability over the current state-of-the-art in the following areas: • Capability to solve extremely large circuit problems by supporting large-scale parallel computing platforms (up to thousands of processors). This includes support for most popular parallel and serial computers. • A differential-algebraic-equation (DAE) formulation, which better isolates the device model package from solver algorithms. This allows one to develop new types of analysis without requiring the implementation of analysis-specific device models. • Device models that are specifically tailored to meet Sandia’s needs, including some radiation-aware devices (for Sandia users only). • Object-oriented code design and implementation using modern coding practices. Xyce is a parallel code in the most general sense of the phrase — a message passing parallel implementation — which allows it to run efficiently a wide range of computing platforms. These include serial, shared-memory and distributed-memory parallel platforms. Attention has been paid to the specific nature of circuit-simulation problems to ensure that optimal parallel efficiency is achieved as the number of processors grows.

97 MATHEMATICS AND COMPUTING↗

Developments in the simulation of separated flows using finite difference methods

Compressible viscous flow simulation using finite difference Navier-Stokes and viscous-inviscid interaction methods is described. Recent developments are reviewed that significantly improve the computational efficiency of approximately factored implicit Navier-Stokes algorithms. Compared to Navier-Stokes codes, modern viscous-inviscid interaction codes are more computationally efficient, but have restricted application and are more complicated to program. Therefore, less efficient but more general viscous-inviscid interaction methods are investigated that use forcing functions instead of boundary condition matching, and a simple, direct/inverse, three-dimensional, finite-difference, boundary layer code is presented.

Steger, J. L.↗

Opacity Table Generation

Radiation opacity is a key property of material systems which describes the absorption and scattering of photons. Such processes are an important part of energy transport, diagnostics, and astrophysical phenomena. Recent experiments in iron opacity and continuum lowering have sparked renewed interest in and careful vetting of opacity models. Even within the local thermodynamic equilibrium approximation, opacity varies over a large parameter space: material, temperature, density, and energy. Opacity tables that span wide regimes of this parameter space are of prime importance to radiation-hydrodynamics codes. Accurate opacity calculations cannot be achieved inline during a radiation hydrodynamics simulation since they involve accounting for all possible electron transitions of all important atomic states of a thermal ensemble. Livermore’s current framework utilizes precalculated tables at many densities, temperatures, and energies. Last year, the opacity theory team completed an L2 milestone concerning the development of a new code, Opus, which served the dual purpose of creating a modern code infrastructure and version control as well as the basis for training new members of that team, a critical need as key members near or are passed retirement. For the current L2 milestone, we exercised and validated Opus on three elements: boron, carbon, and nitrogen, which have few enough electrons to allow a careful convergence study over many input parameters. Here, we report on the production of new tables, show their convergence with respect to important parameters, state some of their limitations, and document a mostly automated production process. In this section, we address the milestone completion criteria, found on the title page and the subsection headings. In section 2, we validate Opus against Tycho and compare with TabOp and Atomic. Section 3 details some of the physics implemented in Opus and relevant to this report. We then cover details of the density-temperature grid in section 4 and do a spectral comparison between different parameter settings and different codes in section 5. After summarizing these results in section 6, we give instructions how to run the opacity table scripts in appendix A and document the scripts and input/output files in appendix B.

70 PLASMA PHYSICS AND FUSION TECHNOLOGY↗

Probabilistic Seismic Hazard Assessment for Georgia

Probabilistic Seismic Hazard Assessments (PSHA) form the basis for most contemporary seismic provisions in building codes around the world. The current building code of Georgia (2009) is not fully compatible with seismic hazard and design concepts of modern codes. The Ministry of Economy and Sustainable Development of Georgia is currently undertaking an update to the building code to align it with EuroCode. In conjunction with EuroCode, a National Annex specific to Georgia is needed, including seismic hazard values for the territory of Georgia. A comprehensive earthquake catalogue is fundamental to a robust PSHA in the region. The Caucasus has had an uneven seismic recording and reporting history both temporally and spatially. Therefore, there has been a strong regional effort to bring together data from all the countries in the Caucasus, to digitize and standardize paper-based data from the Soviet era, and to re-examine magnitude and location calculations. The earthquake catalogue resulting from this effort forms the basis for a reliable seismic hazard assessment. Recognizing these needs, the U.S. Department of Energy through Lawrence Livermore National Laboratory (LLNL) initiated a project in 2015 to engage and train local scientists in the Caucasus to install new equipment, to enhance the quality of seismic monitoring and reporting, and to improve and harmonize the regional earthquake catalogue. In 2016, the project scope was expanded to include the modernization of seismic hazard assessments. To this end, a series of workshops were held in Georgia, the first one of which presented an overview of PSHA and its components to various participants from the universities and other research organizations in the region. This kick-off workshop was followed by numerous hands-on training workshops in 2017 and 2018, covering all aspects of PSHA. In addition to their training goals, the workshops brought together existing and new information relevant to PSHA studies in the region, providing a platform for local scientists/engineers and experts from other parts of the world to interact, cooperate and discuss various pieces of the PSHA input. This report outlines the aspects of the earthquake catalogue development and PSHA project that were specifically undertaken to form the basis for the building code update in Georgia. Georgia straddles the Greater Caucasus and Lesser Caucasus Fold and Thrust belts, where the convergent tectonic setting generates significant earthquake activity. To the east of the country, evidence indicates the possibility of a remnant subducting slab that causes earthquakes deeper than 40km. This study systematically compiles and improves all available data on local seismicity, active faults, and ground motion attenuation characteristics of the region; and builds a framework to enable a contemporary PSHA to be carried out with the engagement of local scientists. To this end, six regional workshops were organized in total over a three-year period of time, with participation from the United States, Canada and Hungary as well as countries in the Caucasus: Georgia, Armenia, Azerbaijan and Turkey. The workshops served multiple purposes such as training, data collection, interactions between local earth scientists and engineers, and brainstorming and knowledge exchange among local and international experts.

Geosciences↗

Modernization of ORIGEN Library Creation in the SCALE Computer Code

The modernization of SCALE features has been a target for recent SCALE releases. ORIGEN, the activation and depletion code in SCALE, is one such legacy code that has been targeted for modernization. A part of these modernization efforts has been to develop capabilities within ORIGEN to directly read ENDF-formatted data files. In addition, the input format for the COUPLE library creation utility was rewritten to a format more accessible to newer SCALE users. Finally, the ability of COUPLE to create ORIGEN libraries without sublibrary data has been added.KEYWORDS: ORIGEN, depletion, SCALE, API

Hart, Shane↗

Modeling LANSCE Line D and RI Beamlines in Elegant and Impact-T

This technical report describes models in Elegant and Impact-T of two LANSCE high-energy beamlines: LineD and Ring Injection. These two beamlines transport the 800 MeV H- beam from the exit of the 805 MHz Linac to the entrance of the PSR. Computer models of all LANSCE high-energy beamlines exist in Transport but include a limited model of the space charge forces. A motivation for using Elegant as an optional beam dynamics code is that the existing model of the PSR is in Elegant, therefore enabling the modeling of the full beam injection scheme. Also, Elegant is a modern code being used by a large accelerator physics community which makes the calculation results more reliable. The drawback is that Elegant has also a limited space charge force model. Therefore, we have opted to include the Particle-In-Cell (PIC) code Impact-T as an alternate beam dynamics code to verify the Elegant calculations. We will use the new Line D and RI models to study beam halo in the transport leading into the PSR, and to evaluate collimation schemes as part of the PSR upgrade. The new models can also be readily used in support of other LANSCE activities.

43 PARTICLE ACCELERATORS↗

Computer-Aided Parallelizer and Optimizer

The Computer-Aided Parallelizer and Optimizer (CAPO) automates the insertion of compiler directives (see figure) to facilitate parallel processing on Shared Memory Parallel (SMP) machines. While CAPO currently is integrated seamlessly into CAPTools (developed at the University of Greenwich, now marketed as ParaWise), CAPO was independently developed at Ames Research Center as one of the components for the Legacy Code Modernization (LCM) project. The current version takes serial FORTRAN programs, performs interprocedural data dependence analysis, and generates OpenMP directives. Due to the widely supported OpenMP standard, the generated OpenMP codes have the potential to run on a wide range of SMP machines. CAPO relies on accurate interprocedural data dependence information currently provided by CAPTools. Compiler directives are generated through identification of parallel loops in the outermost level, construction of parallel regions around parallel loops and optimization of parallel regions, and insertion of directives with automatic identification of private, reduction, induction, and shared variables. Attempts also have been made to identify potential pipeline parallelism (implemented with point-to-point synchronization). Although directives are generated automatically, user interaction with the tool is still important for producing good parallel codes. A comprehensive graphical user interface is included for users to interact with the parallelization process.

Jin, Haoqiang↗

GPU Implementation of the OVERFLOW CFD Code

The high-performance computing (HPC) landscape is quickly changing to systems where most of the performance comes from specialized chips, specifically graphics processing units (GPUs). Such GPU systems are throughput machines, where efficient use of the GPU often requires code refactoring to expose a few orders of magnitude more fine grain parallelism than was previously used on the CPU. Recent modifications to OVERFLOW, an overset, structured grid, computational fluid dynamics flow solver, written in Fortran will be presented. These modifications include both code modernization efforts and algorithmic changes to enable OVERFLOW to efficiently utilize GPUs. Many of these algorithmic changes would likely also be applicable for other structured grid, stencil-based codes wanting to utilize GPUs. The capabilities that have been ported to run on the GPUs are presented, along with the performance gains of the GPU version relative the CPU version of OVERFLOW.

GPU Programming↗

GPU Implementation of the OVERFLOW CFD Code

The high-performance computing (HPC) landscape is quickly changing to systems where most of the performance comes from specialized chips, specifically graphics processing units (GPUs). Such GPU systems are throughput machines, where efficient use of the GPU often requires code refactoring to expose a few orders of magnitude more fine grain parallelism than was previously used on the CPU. Recent modifications to OVERFLOW, an overset, structured grid, computational fluid dynamics flow solver, written in Fortran will be presented. These modifications include both code modernization efforts and algorithmic changes to enable OVERFLOW to efficiently utilize GPUs. Many of these algorithmic changes would likely also be applicable for other structured grid, stencil-based codes wanting to utilize GPUs. The capabilities that have been ported to run on the GPUs are presented, along with the performance gains of the GPU version relative the CPU version of OVERFLOW.

GPU Programming↗

NASA GPU Hackathon Yields Significant Code Improvements

The NASA GPU Hackathon 2020 brought together application developers and computer experts to help get important NASA applications running effectively on graphics processing unit (GPU) nodes. Nine teams of application developers participated in this virtual event, a major impetus for teams to modernize codes of interest for NASA missions to CPU nodes containing GPU accelerators, with a focus on hands-on problem solving. The photo in Figure1 shows 30 of the more than50 participants. The HECC project and NVIDIA jointly organized the event, and HECC provided five Pleiades nodes each with 4 V100 GPUs for teams to use. The virtual event, which took place over four days from September 28–October 7, 2020, used Microsoft Teams and Slack as collaboration tools. Each team consisted of three to six members from NASA Centers and supporting organizations. The teams were paired with one to two mentors from industry, government, and academia. The experience levels of the teams ranged from being GPU novices to advanced CUDA programming experts. OpenACC and the emerging Kokkos API were used in addition to CUDA for GPU programming. During the event, which focused on accelerating AeroSciences and CFD applications, most teams achieved considerable performance improvements on both GPUs and CPUs. For example, a team with no GPU experience completed a first port of a time-critical loop to a GPU. Another team of expert CUDA programmers were able to restructure their algorithm, yielding a factor of five speed-up. And another team sped up some of their CUDA kernels by a factor of 20, which directly translated into their production code. This article highlights some of the many successes resulting from the event.

HECC↗

Testing of ENDF/B-VIII.0 in the GNDS format with LLNL transport codes - 25606

ENDF/B-VIII.0 was released in the Evaluated Nuclear Data Format and the Generalized Nuclear Data Structure format (GNDS), a new international standard for storing nuclear data developed under the auspices of the Nuclear Energy Agency Working Party on Evaluation Cooperation Subgroup 38. GNDS relies on modern coding practices, and offers a structured, flexible and physics-based standard for storing and exchanging nuclear data to address limitations in legacy nuclear data formats such as ENDF-6. GNDS supports the storage of evaluated nuclear data as well as processed data suitable for both deterministic (i.e., multi-group) and Monte Carlo transport codes. Lawrence Livermore National Laboratory has implemented a complete suite of codes to test GNDS data. Simulations for the ENDF/B-VIII.0 cross-section library in GNDS format are presented. Deterministic and Monte Carlo radiation transport simulations with the Ardra and Mercury codes respectively, are validated against reactivities in fast criticality safety benchmark assemblies. Finally, Mercury simulations of {sup 238}U(n,f), {sup 237}Np(n,f) and {sup 239}Pu(n,f) reaction rates in Godiva, Jezebel and Flattop are compared to MCNP results and measured data. (authors)

61 RADIATION PROTECTION AND DOSIMETRY↗