Search NASA⌕ Search

SEARCH · Search NASA

Results for “parallel codes”

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 775 records · Page 43

EUPDF-II: An Eulerian Joint Scalar Monte Carlo PDF Module : User's Manual

EUPDF-II provides the solution for the species and temperature fields based on an evolution equation for PDF (Probability Density Function) and it is developed mainly for application with sprays, combustion, parallel computing, and unstructured grids. It is designed to be massively parallel and could easily be coupled with any existing gas-phase CFD and spray solvers. The solver accommodates the use of an unstructured mesh with mixed elements of either triangular, quadrilateral, and/or tetrahedral type. The manual provides the user with an understanding of the various models involved in the PDF formulation, its code structure and solution algorithm, and various other issues related to parallelization and its coupling with other solvers. The source code of EUPDF-II will be available with National Combustion Code (NCC) as a complete package.

Raju, M. S.↗

Evaluating Performance Portability with the CMS Heterogeneous Pixel Reconstruction code

In the past years the landscape of tools for expressing parallel algorithms in a portable way across various compute accelerators has continued to evolve significantly. There are many technologies on the market that provide portability between CPU, GPUs from several vendors, and in some cases even FPGAs. These technologies include C++ libraries such as Alpaka and Kokkos, compiler directives such as OpenMP, the SYCL open specification that can be implemented as a library or in a compiler, and standard C++ where the compiler is solely responsible for the offloading. Given this developing landscape, users have to choose the technology that best fits their applications and constraints. For example, in the CMS experiment the experience so far in heterogeneous reconstruction algorithms suggests that the full application contains a large number of relatively short computational kernels and memory transfer operations. In this work we use a stand-alone version of the CMS heterogeneous pixel reconstruction code as a realistic use case of HEP reconstruction software that is capable of leveraging GPUs effectively. We summarize the experience of porting this code base from CUDA to Alpaka, Kokkos, SYCL, std::par, and OpenMP offloading. We compare the event processing throughput achieved by each version on NVIDIA and AMD GPUs as well as on a CPU, and compare those to what a native version of the code achieves on each platform.

Andriotis, Nikolaos↗

Injector Design Tool Improvements: User's manual for FDNS V.4.5

The major emphasis of the current effort is in the development and validation of an efficient parallel machine computational model, based on the FDNS code, to analyze the fluid dynamics of a wide variety of liquid jet configurations for general liquid rocket engine injection system applications. This model includes physical models for droplet atomization, breakup/coalescence, evaporation, turbulence mixing and gas-phase combustion. Benchmark validation cases for liquid rocket engine chamber combustion conditions will be performed for model validation purpose. Test cases may include shear coaxial, swirl coaxial and impinging injection systems with combinations LOXIH2 or LOXISP-1 propellant injector elements used in rocket engine designs. As a final goal of this project, a well tested parallel CFD performance methodology together with a user's operation description in a final technical report will be reported at the end of the proposed research effort.

Chen, Yen-Sen↗

Constructions for finite-state codes

A class of codes called finite-state (FS) codes is defined and investigated. These codes, which generalize both block and convolutional codes, are defined by their encoders, which are finite-state machines with parallel inputs and outputs. A family of upper bounds on the free distance of a given FS code is derived from known upper bounds on the minimum distance of block codes. A general construction for FS codes is then given, based on the idea of partitioning a given linear block into cosets of one of its subcodes, and it is shown that in many cases the FS codes constructed in this way have a d sub free which is as large as possible. These codes are found without the need for lengthy computer searches, and have potential applications for future deep-space coding systems. The issue of catastropic error propagation (CEP) for FS codes is also investigated.

Pollara, F.↗

Finite-state codes

A class of codes called finite-state (FS) codes is defined and investigated. The codes, which generalize both block and convolutional codes, are defined by their encoders, which are finite-state machines with parallel inputs and outputs. A family of upper bounds on the free distance of a given FS code is derived. A general construction for FS codes is given, and it is shown that in many cases the FS codes constructed in this way have a free distance that is the largest possible. Catastrophic error propagation (CEP) for FS codes is also discussed. It is found that to avoid CEP one must solve the graph-theoretic problem of finding a uniquely decodable edge labeling of the state diagram.

Pollara, Fabrizio↗

Enabling Execution of a Legacy CFD Mini Application on Accelerators Using OpenMP

We describe the process and outcome of our efforts to port a legacy Fortran benchmark code to heterogeneous GPU-accelerated computing architectures using OpenMP. The benchmark code is one of the multi-zone NAS Parallel Benchmarks (NPB-MZ) called SP-MZ. This “mini-app” mimics the computation and data movement that is found in popular legacy and modern implicit computational fluid dynamics (CFD)solvers. Our objective was to examine how efficiently legacy Fortran codes can be ported to accelerators by leveraging OpenMP directives. We describe the development and optimization process and demonstrate the performance impact of various code modifications. We show select profiling results from the Nvidia nvvp profiler to help others diagnose and overcome performance issues in their own applications. We present results for two compute systems endowed with Nvidia V100 accelerators.

Ioannis Nompelis↗

Automated Vectorization of Decision-Based Algorithms

Virtually all existing vectorization algorithms are designed to only analyze the numeric properties of an algorithm and distribute those elements across multiple processors. This advances the state of the practice because it is the only known system, at the time of this reporting, that takes high-level statements and analyzes them for their decision properties and converts them to a form that allows them to automatically be executed in parallel. The software takes a high-level source program that describes a complex decision- based condition and rewrites it as a disjunctive set of component Boolean relations that can then be executed in parallel. This is important because parallel architectures are becoming more commonplace in conventional systems and they have always been present in NASA flight systems. This technology allows one to take existing condition-based code and automatically vectorize it so it naturally decomposes across parallel architectures.

James, Mark↗

Towards Generic Parallel Programming in Computer Science Education with Kokkos

Parallel patterns, views, and spaces are promising abstractions to capture the programmer's intent as well as the contextual information that can be used by an underlying runtime to efficiently map software to parallel hardware. These abstractions can be valuable in cases where an algorithm must accommodate requirements of code and performance portability across hardware architectures and vendor programming models. Kokkos is a parallel programming model for host- and accelerator architectures that relies on these abstractions and targets these requirements. It consists of a pure C++ interface, a specification, and a programming library. The programming library exposes patterns and types and maps them to an underlying abstract machine model. The abstract machine model offers a generic view of parallel hardware. While Kokkos is gaining popularity in large-scale HPC applications at some DOE laboratories, we believe that the implemented concepts are of interest to a broader audience including academia as they may contribute to a generic, vendor, and architecture-independent education of parallel programming. In this work, we give an insight into the design considerations of this programming model and list important abstractions. Further, we document best practices obtained from giving virtual classes on Kokkos and give pointers to resources that the reader may consider valuable for a lecture on generic parallel programming for students with preexisting knowledge on this matter.

Ciesko, Jan↗

Fluid Management of and Flame Spread Across Liquid Pools

The goal of our research on flame spread across pools of liquid fuel remains the quantitative identification of the mechanisms that control the rate and nature of flame spread when the initial temperature of the liquid pool is below the fuel's flash point temperature. As described in, four microgravity (mu-g) sounding rocket flights examined the effect of forced opposed airflow over a 2.5 cm deep x 2 cm wide x 30 cm long pool of 1-butanol. Among many unexpected findings, it was observed that the flame spread is much slower and steadier than in 1g where flame spread has a pulsating character. Our numerical model, restricted to two dimensions, had predicted faster, pulsating flame spread in mu-g. In a test designed to achieve a more 2-D experiment, our investigation of a shallow, wide pool (2 mm deep x 78 mm wide x 30 cm long) was unsuccessful in mu-g, due to an unexpectedly long time required to fill the tray. As such, the most recent Spread Across Liquids (SAL) sounding rocket experiment had two principal objectives: 1) determine if pulsating flame spread in deep fuel trays would occur under the conditions that a state-of-the-art computational combustion code and short-duration drop tower tests predict; and 2) determine if a long, rectangular, shallow fuel tray could achieve a visibly flat liquid surface across the whole tray without spillage in the mu-g time allotted. If the second objective was met, the shallow tray was to be ignited to determine the nature of flame spread in mu-g for this geometry. For the first time in the experiment series, two fuel trays - one deep (30 cm long x 2 cm wide x 25 mm deep) and one shallow (same length and width, but 2 mm deep)-- were flown. By doing two independent experiments in a single flight, a significant cost savings was realized. In parallel, the computational objective was to modify the code to improve agreement with earlier results. This last objective was achieved by modifying the fuel mass diffusivity and adding a parameter to correct for radiative and lateral heat loss.

Ross, H. D.↗

Toward a 2D Local Implementation of Quantum Low-Density Parity-Check Codes

Geometric locality is an important theoretical and practical factor for quantum low-density parity-check (qLDPC) codes that affects code performance and ease of physical realization. For device architectures restricted to two-dimensional (2D) local gates, naively implementing the high-rate codes suitable for low-overhead fault-tolerant quantum computing incurs prohibitive overhead. In this work, we present an error-correction protocol built on a bilayer architecture that aims to reduce operational overheads when restricted to 2D local gates by measuring some generators less frequently than others. We investigate the family of bivariate-bicycle qLDPC codes and show that they are well suited for a parallel syndrome-measurement scheme using fast routing with local operations and classical communication (LOCC). Through circuit-level simulations, we find that in some parameter regimes, bivariate-bicycle codes implemented with this protocol have logical error rates comparable to the surface code while using fewer physical qubits. Published by the American Physical Society 2025

Berthusen, Noah (ORCID:0000000275862786)↗

Automated Generation of Message-Passing Programs: An Evaluation of CAPTools using NAS Benchmarks

Scientists at NASA Ames Research Center have been developing computational aeroscience applications on highly parallel architectures over the past ten years. During the same time period, a steady transition of hardware and system software also occurred, forcing us to expand great efforts into migrating and receding our applications. As applications and machine architectures continue to become increasingly complex, the cost and time required for this process will become prohibitive. Various attempts to exploit software tools to assist and automate the parallelization process have not produced favorable results. In this paper, we evaluate an interactive parallelization tool, CAPTools, for parallelizing serial versions of the NAB Parallel Benchmarks. Finally, we compare the performance of the resulting CAPTools generated code to the hand-coded benchmarks on the Origin 2000 and IBM SP2. Based on these results, a discussion on the feasibility of automated parallelization of aerospace applications is presented along with suggestions for future work.

Hribar, Michelle R.↗

Development of the US3D Code for Advanced Compressible and Reacting Flow Simulations

Aerothermodynamics and hypersonic flows involve complex multi-disciplinary physics, including finite-rate gas-phase kinetics, finite-rate internal energy relaxation, gas-surface interactions with finite-rate oxidation and sublimation, transition to turbulence, large-scale unsteadiness, shock-boundary layer interactions, fluid-structure interactions, and thermal protection system ablation and thermal response. Many of the flows have a large range of length and time scales, requiring large computational grids, implicit time integration, and large solution run times. The University of Minnesota NASA US3D code was designed for the simulation of these complex, highly-coupled flows. It has many of the features of the well-established DPLR code, but uses unstructured grids and has many advanced numerical capabilities and physical models for multi-physics problems. The main capabilities of the code are described, the physical modeling approaches are discussed, the different types of numerical flux functions and time integration approaches are outlined, and the parallelization strategy is overviewed. Comparisons between US3D and the NASA DPLR code are presented, and several advanced simulations are presented to illustrate some of novel features of the code.

CFD↗

Computing Flow Transition On Parallel Processors

Parallel algorithm developed on multiple-microprocessor computer. Program initiated to develop computer codes capable of directly simulating and mathematically modeling transition process at mach numbers ranging from subsonic to hypersonic. Parallel computers potentially offer reduction of processing time; processing time inversely proportional to number of available processors.

Bokhari, S.↗

A new conformal absorbing boundary condition for finite element meshes and parallelization of FEMATS

Some of the progress toward the development and parallelization of an improved version of the finite element code FEMATS is described. This is a finite element code for computing the scattering by arbitrarily shaped three dimensional surfaces composite scatterers. The following tasks were worked on during the report period: (1) new absorbing boundary conditions (ABC's) for truncating the finite element mesh; (2) mixed mesh termination schemes; (3) hierarchical elements and multigridding; (4) parallelization; and (5) various modeling enhancements (antenna feeds, anisotropy, and higher order GIBC).

Chatterjee, A.↗

DARMA-Kokkos Data and Execution Interoperability WBS 2.3.1.04 Milestone 16 (ECP Milestone Report)

DARMA (Distributed Asynchronous Resilient Models for Applications) is a runtime library supporting the Sandia ATDM (Advanced Technology Development and Mitigation) program. The main application drivers fall within the ECP milestone 2.2.5.03 ADNN03-ASC ATDM SNL Application, which includes applications that require load balancing and asynchronous communication for high performance. The DARMA runtime infrastructure has been modified to be compatible with Kokkos/OpenMP parallelization within tasks, which is a critical requirement for high performance for the Sandia ATDM apps. DARMA development has occurred in parallel with a verification milestone for ATDM in FY18. For FY19, DARMA should impact ATDM by enabling dynamic load balancing and communication through only incremental changes to the existing verified MPI codes. DARMA can now support the intra-kernel thread parallelization in the parent MPI apps, allowing DARMA to be easily added without rewriting individual math kernels. The results presented here demonstrate the DARMA results for an MPI mini-app.

97 MATHEMATICS AND COMPUTING↗

Advancement of hybrid fluid-kinetic modeling for HEDP and ICF science

We report on the development progress of a hybrid fluid-kinetic code for simulating fluids and plasmas in a wide range of environments, such as laser–matter interactions, inertial confinement fusion, magnetic confinement fusion, and pulsed power. The suite of numerical tools under development utilizes heterogeneous computer architectures and leverages the benefits of particle–based simulation techniques. By working to combine the kinetic particle-in-cell (PIC) model with a particle-based fluid simulation technique, such as smoothed particle hydrodynamics, we are developing a flexible framework capable of accurately modeling complex flows within and between kinetic and fluid regimes. The TriForce code is under development as a C++ framework for parallel, 3D, particle-based, hybrid fluid-kinetic plasma simulations. The fluid half of TriForce will be based upon the meshless smoothed-particle-hydrodynamics (SPH) approach, well-suited for shear, mixing, and turbulence, whereas the kinetic half resembles a traditional particle-in-cell (PIC) code; other particle-based approaches to fluid modeling that do use a mesh are also possible to use and are under investigation. Maxwell’s electromagnetic field equations are solved either via explicit or implicit algorithms or approximated via resistive magnetohydrodynamics (MHD) using an Ohm’s law and resulting induction equation (extended MHD is under development). A primary goal of enabling direct comparisons, from the same code, between results from the variants of MHD and implicit electromagnetic solutions is to improve our fundamental understanding of systems with magnetic fields. The code is under development to recover results from both radiation-MHD and fully kinetic codes in those limits, and is continuing to be developed from other follow-on grants to operate in between where both descriptions may co-exist and interact. For certain applications, it is desired for a simulation to contain fluid ions and electrons as well as kinetic ions and electrons. Typically, it is too computationally intensive to model a full-scale ICF or HEDP experiment fully kinetically since many cycles are expended with very small time steps on modeling the fluid part of a material that is well treated by the fluid approximation. In this case, many traditional PIC particles can be replaced with a single fluid particle representing the thermal part of the distribution function, and there are fewer needed kinetic particles, which describe the non-thermal part and can be sub-cycled relative to the fluid particle advance. Furthermore, a pure fluid code may, depending on the problem, simply lack many physically important details that are beyond the scope of its reduced approximations and assumptions. In this report, we summarize the objectives achieved in the development of the collisional and kinetic half of the code, and the physics problems to which the code has been applied in the areas of advanced and innovative fusion concepts, pulsed power, and magneto-inertial fusion.

70 PLASMA PHYSICS AND FUSION TECHNOLOGY↗

Current possibilities and future opportunities for erasure coded computations

The key capability established through the research funded by this award are erasure coded computations for linear systems, in serial and in parallel. This capability enables powerful efficient and scalable alternatives to existing linear system solvers in fault-prone computational systems.

97 MATHEMATICS AND COMPUTING↗

Pedestal origin and extrapolation of high-density small edge-localised-modes peak parallel energy fluence in ITER and SPARC

Experimental analysis and simulations with the BOUT++ code show that small edge-localised modes (ELMs) in reactor-relevant high-density regimes originate in a region close to the separatrix and only marginally perturb the pedestal structure. The measured divertor peak parallel energy fluence (ε ∥,peak ) for a database of small ELM scenarios in DIII-D and ASDEX Upgrade can be reproduced, within 40 % accuracy on average, if an ad hoc modification of the Eich peak parallel ELM energy fluence model is applied to account for the small ELM pedestal birth location. This allows for first-order extrapolation of small-ELM divertor ε ∥,peak to ITER and SPARC, resulting in values that satisfy the nominal melting threshold of tungsten monoblocks of 12 MJ m −2 . The findings reported in this study, both via modelling and direct measurements, constitute a step forward in assessing small ELMs in high edge-collisionality scenarios as a viable plasma regime for the operation of next-generation fusion machines.

70 PLASMA PHYSICS AND FUSION TECHNOLOGY↗