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 1,045 records · Page 58

Turbulence modeling of free shear layers for high performance aircraft

In many flowfield computations, accuracy of the turbulence model employed is frequently a limiting factor in the overall accuracy of the computation. This is particularly true for complex flowfields such as those around full aircraft configurations. Free shear layers such as wakes, impinging jets (in V/STOL applications), and mixing layers over cavities are often part of these flowfields. Although flowfields have been computed for full aircraft, the memory and CPU requirements for these computations are often excessive. Additional computer power is required for multidisciplinary computations such as coupled fluid dynamics and conduction heat transfer analysis. Massively parallel computers show promise in alleviating this situation, and the purpose of this effort was to adapt and optimize CFD codes to these new machines. The objective of this research effort was to compute the flowfield and heat transfer for a two-dimensional jet impinging normally on a cool plate. The results of this research effort were summarized in an AIAA paper titled 'Parallel Implementation of the k-epsilon Turbulence Model'. Appendix A contains the full paper.

Sondak, Douglas↗

Performance Evaluation of Remote Memory Access (RMA) Programming on Shared Memory Parallel Computers

The purpose of this study is to evaluate the feasibility of remote memory access (RMA) programming on shared memory parallel computers. We discuss different RMA based implementations of selected CFD application benchmark kernels and compare them to corresponding message passing based codes. For the message-passing implementation we use MPI point-to-point and global communication routines. For the RMA based approach we consider two different libraries supporting this programming model. One is a shared memory parallelization library (SMPlib) developed at NASA Ames, the other is the MPI-2 extensions to the MPI Standard. We give timing comparisons for the different implementation strategies and discuss the performance.

Jin, Hao-Qiang↗

Rendezvous algorithms for large-scale modeling and simulation

Rendezvous algorithms encode a communication pattern that is useful when processors sending data do not know who the receiving processors should be, or vice versa. The idea is to define an intermediate decomposition where datums from different sending processors can ”rendezvous” to perform a computation, in a manner that both the senders and eventual receivers of the results can identify the appropriate rendezvous processor. Though they were originally designed for interpolating between overlaid grids with independent parallel decompositions (Plimpton et al., 2004), we have recently found rendezvous algorithms useful for a variety of operations in particle- or grid-based simulation codes when running large problems on large numbers of processors. In particular, we show they can perform well when a load-balanced intermediate decomposition is randomized and not spatial, requiring all-to-all communication to move data between processors. In this case rendezvous algorithms leverage the large bisection communication bandwidths which parallel machines provide. We describe how rendezvous algorithms work in a scientific computing context and give specific examples for molecular dynamics and Direct Simulation Monte Carlo codes which result in dramatic performance improvements versus simpler algorithms which do not scale as well. We explain how a generic rendezvous algorithm can be implemented, and also point out similarities with the MapReduce paradigm popularized by Google and Hadoop.

97 MATHEMATICS AND COMPUTING↗

MAESTROeX: A Massively Parallel Low Mach Number Astrophysical Solver

MAESTROeX is a massively parallel, finite-volume C++/F90 solver for low Mach number astrophysical flows. Our code utilizes a low Mach number equation set allowing for more efficient, long-time integration of highly subsonic flows compared to compressible approaches. The recommended range of applicability is for flows where the Mach number does not exceed ~0.1.

79 ASTRONOMY AND ASTROPHYSICS↗

CSRI Summer Proceedings 2020

The Computer Science Research Institute (CSRI) brings university faculty and students to Sandia for focused collaborative research on Department of Energy (DOE) computer and computational science problems. The institute provides an opportunity for university researchers to learn about problems in computer and computational science at DOE laboratories. Participants conduct leading-edge research, interact with scientists and engineers at the laboratories, and help transfer results of their research to programs at the labs. Some specific CSRI research interest areas are: scalable solvers, optimization, adaptivity and mesh refinement, graph-based, discrete, and combinatorial algorithms, uncertainty estimation, mesh generation, dynamic load-balancing, virus and other malicious-code defense, visualization, scalable cluster computers, data-intensive computing, environments for scalable computing, parallel input/output, advanced architectures, and theoretical computer science. The CSRI Summer Program is organized by CSRI and typically includes the organization of a weekly seminar series and the publication of a summer proceedings. In 2020, the CSRI summer program was executed completely virtually; all student interns worked from home, due to the COVID-19 pandemic.

97 MATHEMATICS AND COMPUTING↗

Integrating PGAS and MPI-based Graph Analysis

This project demonstrates that Chapel programs can interface with MPI-based libraries written in C++ without storing multiple copies of shared data. Chapel is a language for productive parallel computing using global address spaces (PGAS). We identified two approaches to interface Chapel code with the MPI-based Grafiki and Trilinos libraries. The first uses a single Chapel executable to call a C function that interacts with the C++ libraries. The second uses the mmap function to allow separate executables to read and write to the same block of memory on a node. We also encapsulated the second approach in Docker/Singularity containers to maximize ease of use. Comparisons of the two approaches using shared and distributed memory installations of Chapel show that both approaches provide similar scalability and performance.

97 MATHEMATICS AND COMPUTING↗

MAESTROeX

MAESTROeX is a massively parallel, finite-volume C++/F90 solver for low Mach number astrophysical flows. The code utilizes a low Mach number equation set allowing for more efficient, long-time integration of highly subsonic flows compared to compressible approaches. The recommended range of applicability is for flows where the Mach number does not exceed~0.1.

Harpole, Alice↗

Three-dimensional Navier-Stokes calculations of multiple interacting vortex rings

Results from a finite-difference Navier-Stokes code for three-dimensional, unsteady, vortical flows in unbounded domains are presented and analyzed in this paper. The vortical flows presented are representative of vortex rings and other closed vortical tubes or structures in fluid mechanics. Such structures are important elements in fluid flows such as jets, atmospheric turbulence, and the far-field wakes of aircraft, and studies of their interaction may aid in an understanding of complex fluid flows. The paper demonstrates that computational methods can be used as a viable alternative or supplement to experimental techniques for studying the physics of vortex flows. The separate visualization of vortex stretching, convection, and diffusion is presented in this paper for a single elliptical vortex ring.The calculations employ a truncated series expansion technique to simulate the unbounded nature of the fluid flow with a finite computational domain, which is a more accurate technique than the conventional freestream boundary specification. The numerical divergence of the three-dimensional vorticity field is considered as a useful estimate of truncation error, and the use of a kinetic energy decay law as a calculation check is demonstrated. Results from the Navier-Stokes code are presented for the unsteady motion of two and four vortex rings along parallel axes, and the results agree qualitatively with experimental flow visualization.

Chamberlain, J. P.↗

Computational simulation of transition to turbulence through inverse modeling

The present investigation has focused on a computational methodology for the fundamental case of transition in channel flow, in which recently published experimental data are utilized both as a stimulus and as a measure of merit of the method. The research has proceeded along three avenues in parallel. The first task has consisted of the development and verification of a computer code which calculates the mean evolution of flow in a channel similar to the one employed experimentally by Blair and Anderson. An analytical test case was created for the dual purposes of code verification and of highlighting the interactions between the Reynolds stress and the mean velocity profile. This test case generated a Reynolds stress by the residue in the momentum equation which is produced by a typical analytical velocity profile. By a substitution of this Reynolds stress into the appropriate code module, the correctness of the code may be verified, along with the accuracy of the computational method. The second task pursued has involved the development of a triple layer model for the Reynolds stress profile, which was suggested and derived from experimental velocity profiles. It is demonstrated that the innermost length scale is based on the local friction velocity, the intermediate layer corresponds to the usual logarithmic law of the wall region in which the normalized Reynolds stress is approximately unity, and the outermost layer is represented by a closed mathematical form depending explicitly on the velocity profile in the wake region. The third task was comprised of scrutiny of the excellent databases developed by Blair and others, and the planning of its incorporation into the transition analysis. These extensive measurements indicate that turbulent statistics in the transition regime may be considered to alternate between laminar and fully turbulent types, the proportions of which are quantified by a measured intermittency function.

Sepri, Paavo↗

Spectral solution of the incompressible Navier-Stokes equations on the Connection Machine2

The issue of solving the time-dependent incompressible Navier-Stokes equations on the Connection Machine 2 is addressed, for the problem of transition to turbulence of the steady flow in a channel. The spectral algorithm used serially requires O(N4) operations when solving the equations on an N x N x N grid; using the massive parallelism of the CM, it becomes an O(N2) problem. Preliminary timings of the code, written in LISP, are included and compared with a corresponding code optimized for the Cray-2 for a 128 x 128 x 101 grid.

Tomboulian, Sherryl↗

Comparison of hydrodynamic and semi-kinetic treatments for plasma flow along closed field lines

Hydrodynamic and semi-kinetic treatments of plasma flow along closed geomagnetic field lines are compared. The hydrodynamic treatment is based on a simplified 16-moment set of transport equations as the equations for the heat flows are not solved; the heat flows are treated heuristically. The semi-kinetic treatment is based on a particle code. The comparison deals with the distributions of the plasma density, flow velocity, and parallel and perpendicular temperatures as obtained from the two treatments during the various stages of the flow. In the kinetic treatment, the appropriate boundary condition is the prescription of the velocity distribution functions for the particles entering the flux tubes at the ionospheric boundaries; those particles leaving the system are determined by the processes occurring in the flux tube. The prescribed distributions are half-Maxwellian with temperature T(sub 0) and density n(sub 0). In the hydrodynamic model, the prescribed boundary conditions are on density (n(sub 0)), flow velocity (V(sub 0)) and temperature (T(sub 0). It was found that results from the hydrodynamic treatment critically depend on V(sub 0); for early stages of the flow this treatment yields results in good agreement with those from the kinetic treatment, when V(sub 0) = square root of (kT(sub 0)/2 (pi)m), which is the average velocity of particles moving in a given direction for a Maxwellian distribution. During this early stage, the flows developing form the conjugate ionospheres show some distinct transitions. For the first hour or so, the flows are highly supersonic and penetrate deep into the opposite hemispheres, and both hydrodynamics and kinetic treatments yield almost similar features. It is found that during this period heatflow effects are negligibly small. When a flow penetrates deep into the opposite hemisphere, the kinetic treatment predicts reflection and setting up of counterstreaming. In contrast, the hydrodynamic treatment yields a shock in the flow. The reasons for this difference in the two treatments is discussed, showing that in view of the relatively warm ions, the coupling of ion beams and the consequent shock formation in the offequatorial region are not likely due to the enhancements in the beam temperatures. The counterstreaming in the kinetic treatment and the shock in the hydrodynamic treatment first advance upward to the equator and then downward to the ionospheric boundary from where the flow originated. The transit time for this advancement is found to be about 1 hour for the respective models. After 2 hours or so, both models predict that the flows from the ionospheric boundaries are generally subsonic with respect to the local ion-sound speed. At late stages of the flow, when a substantial fraction of ions entering the flux tube begin to return back in the kinetic treatment, the hydrodynamic treatment with the boundary condition V(sub 0) = square root of (kT(sub 0)/2(pi)m) yields an over-refilling, and the choice of V(sub 0) becomes uncertain.

Singh, Nagendra↗

Multithreaded Model for Dynamic Load Balancing Parallel Adaptive PDE Computations

We present a multithreaded model for the dynamic load-balancing of numerical, adaptive computations required for the solution of Partial Differential Equations (PDE's) on multiprocessors. Multithreading is used as a means of exploring concurrency in the processor level in order to tolerate synchronization costs inherent to traditional (non-threaded) parallel adaptive PDE solvers. Our preliminary analysis for parallel, adaptive PDE solvers indicates that multithreading can be used an a mechanism to mask overheads required for the dynamic balancing of processor workloads with computations required for the actual numerical solution of the PDE's. Also, multithreading can simplify the implementation of dynamic load-balancing algorithms, a task that is very difficult for traditional data parallel adaptive PDE computations. Unfortunately, multithreading does not always simplify program complexity, often makes code re-usability not an easy task, and increases software complexity.

Chrisochoides, Nikos↗

A Parallel Non-Overlapping Domain-Decomposition Algorithm for Compressible Fluid Flow Problems on Triangulated Domains

This paper considers an algebraic preconditioning algorithm for hyperbolic-elliptic fluid flow problems. The algorithm is based on a parallel non-overlapping Schur complement domain-decomposition technique for triangulated domains. In the Schur complement technique, the triangulation is first partitioned into a number of non-overlapping subdomains and interfaces. This suggests a reordering of triangulation vertices which separates subdomain and interface solution unknowns. The reordering induces a natural 2 x 2 block partitioning of the discretization matrix. Exact LU factorization of this block system yields a Schur complement matrix which couples subdomains and the interface together. The remaining sections of this paper present a family of approximate techniques for both constructing and applying the Schur complement as a domain-decomposition preconditioner. The approximate Schur complement serves as an algebraic coarse space operator, thus avoiding the known difficulties associated with the direct formation of a coarse space discretization. In developing Schur complement approximations, particular attention has been given to improving sequential and parallel efficiency of implementations without significantly degrading the quality of the preconditioner. A computer code based on these developments has been tested on the IBM SP2 using MPI message passing protocol. A number of 2-D calculations are presented for both scalar advection-diffusion equations as well as the Euler equations governing compressible fluid flow to demonstrate performance of the preconditioning algorithm.

Barth, Timothy J.↗

Toward Automatic Scalability Analysis of Message Passing Programs: A Case Study

Scalability analysis forms an important component of any performance debugging cycle, for massively parallel machines. However, tools that help in performing such analysis for parallel programs are non-existent. The primary reason for lack of such tools is the complexity involved in capturing program dynamics such as communication-computation overlap, communication latencies and memory hierarchy reference patterns. In this paper, we highlight some simple techniques that can be used to study scalability of explicit message-passing parallel programs that consider the above issues. We start from the high level source code and use a methodology for deducing communication characteristics and its impact on the total execution time of the program. The approach is validated with the help of a pipelined method for solving scalar tri-diagonal systems, using both simulations and symbolic cost models on the Intel hypercube.

Sarukkai, Sekhar R.↗

Reducing False Positives in Runtime Analysis of Deadlocks

This paper presents an improvement of a standard algorithm for detecting dead-lock potentials in multi-threaded programs, in that it reduces the number of false positives. The standard algorithm works as follows. The multi-threaded program under observation is executed, while lock and unlock events are observed. A graph of locks is built, with edges between locks symbolizing locking orders. Any cycle in the graph signifies a potential for a deadlock. The typical standard example is the group of dining philosophers sharing forks. The algorithm is interesting because it can catch deadlock potentials even though no deadlocks occur in the examined trace, and at the same time it scales very well in contrast t o more formal approaches to deadlock detection. The algorithm, however, can yield false positives (as well as false negatives). The extension of the algorithm described in this paper reduces the amount of false positives for three particular cases: when a gate lock protects a cycle, when a single thread introduces a cycle, and when the code segments in different threads that cause the cycle can actually not execute in parallel. The paper formalizes a theory for dynamic deadlock detection and compares it to model checking and static analysis techniques. It furthermore describes an implementation for analyzing Java programs and its application to two case studies: a planetary rover and a space craft altitude control system.

Bensalem, Saddek↗

[Activities of Bay Area Research Corporation]

During the final year of this effort the HALFSHEL code was converted to work on a fast single processor workstation from it s parallel configuration. This was done because NASA Ames NAS facility stopped supporting space science and we no longer had access to parallel computer time. The single processor version of HALFSHEL was upgraded to address low density cells by using a a 3-D SOR solver to solve the equation Delta central dot E = 0. We then upgraded the ionospheric load packages to provide a multiple species load of the ionosphere out to 1.4 Rm. With these new tools we began to perform a series of simulations to address the major topic of this research effort; determining the loss rate of O(sup +) and O2(sup +) from Mars. The simulations used the nominal Parker spiral field and in one case used a field perpendicular to the solar wind flow. The simulations were performed for three different solar EUV fluxes consistent with the different solar evolutionary states believed to exist before today. The 1 EUV case is the nominal flux of today. The 3 EUV flux is called Epoch 2 and has three times the flux of todays. The 6 EUV case is Epoch 3 and has 6 times the EUV flux of today.

Source record↗

Three-Dimensional Deformable Grid Electromagnetic Particle-in-cell for Parallel Computers

We describe a new parallel, non-orthogonal grid, three-dimensional electromagnetic particle-in-cell (EMPIC) code based on a finite-volume formulation. This code uses a logically Cartesian grid of deformable hexahedral cells, a discrete surface integral (DSI) algorithm to calculate the electromagnetic field, and a hybrid logical-physical space algorithm to push particles.

Cartesian grid Grid Electromagnetic electromagneti↗

Fast-Acquisition/Weak-Signal-Tracking GPS Receiver for HEO

A report discusses the technical background and design of the Navigator Global Positioning System (GPS) receiver -- . a radiation-hardened receiver intended for use aboard spacecraft. Navigator is capable of weak signal acquisition and tracking as well as much faster acquisition of strong or weak signals with no a priori knowledge or external aiding. Weak-signal acquisition and tracking enables GPS use in high Earth orbits (HEO), and fast acquisition allows for the receiver to remain without power until needed in any orbit. Signal acquisition and signal tracking are, respectively, the processes of finding and demodulating a signal. Acquisition is the more computationally difficult process. Previous GPS receivers employ the method of sequentially searching the two-dimensional signal parameter space (code phase and Doppler). Navigator exploits properties of the Fourier transform in a massively parallel search for the GPS signal. This method results in far faster acquisition times [in the lab, 12 GPS satellites have been acquired with no a priori knowledge in a Low-Earth-Orbit (LEO) scenario in less than one second]. Modeling has shown that Navigator will be capable of acquiring signals down to 25 dB-Hz, appropriate for HEO missions. Navigator is built using the radiation-hardened ColdFire microprocessor and housing the most computationally intense functions in dedicated field-programmable gate arrays. The high performance of the algorithm and of the receiver as a whole are made possible by optimizing computational efficiency and carefully weighing tradeoffs among the sampling rate, data format, and data-path bit width.

Wintemitz, Luke↗