Search NASA⌕ Search

SEARCH · Search NASA

Results for “distributed parallel programming”

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 199 records · Page 11

Velocity-space synthesis of ISEE-1 measurements of the three dimensional electron distribution function

A computer package which produces contour plots of the three dimensional electron distribution function measured by an electron spectrometer aboard ISEE-1 is described. Examples of the contour plots and an explanation of how to use the program, including the necessary computer code for running the program on the GSFC 360/91 computer is presented. The method by which the discrete measurements of the distribution function, given by points on the four dimensional surface are synthesized into a smooth surface in a three dimensional space which can be contoured is described. The velocity components are parallel and perpendicular to the magnetic field, respectively, in the proper frame of the electrons.

Fitzenreiter, R. J.↗

Performance and Application of Parallel OVERFLOW Codes on Distributed and Shared Memory Platforms

The presentation discusses recent studies on the performance of the two parallel versions of the aerodynamics CFD code, OVERFLOW_MPI and _MLP. Developed at NASA Ames, the serial version, OVERFLOW, is a multidimensional Navier-Stokes flow solver based on overset (Chimera) grid technology. The code has recently been parallelized in two ways. One is based on the explicit message-passing interface (MPI) across processors and uses the _MPI communication package. This approach is primarily suited for distributed memory systems and workstation clusters. The second, termed the multi-level parallel (MLP) method, is simple and uses shared memory for all communications. The _MLP code is suitable on distributed-shared memory systems. For both methods, the message passing takes place across the processors or processes at the advancement of each time step. This procedure is, in effect, the Chimera boundary conditions update, which is done in an explicit "Jacobi" style. In contrast, the update in the serial code is done in more of the "Gauss-Sidel" fashion. The programming efforts for the _MPI code is more complicated than for the _MLP code; the former requires modification of the outer and some inner shells of the serial code, whereas the latter focuses only on the outer shell of the code. The _MPI version offers a great deal of flexibility in distributing grid zones across a specified number of processors in order to achieve load balancing. The approach is capable of partitioning zones across multiple processors or sending each zone and/or cluster of several zones into a single processor. The message passing across the processors consists of Chimera boundary and/or an overlap of "halo" boundary points for each partitioned zone. The MLP version is a new coarse-grain parallel concept at the zonal and intra-zonal levels. A grouping strategy is used to distribute zones into several groups forming sub-processes which will run in parallel. The total volume of grid points in each group are approximately balanced. A proper number of threads are initially allocated to each group, and in subsequent iterations during the run-time, the number of threads are adjusted to achieve load balancing across the processes. Each process exploits the multitasking directives already established in Overflow.

Djomehri, M. Jahed↗

A Concept for Run-Time Support of the Chapel Language

A document presents a concept for run-time implementation of other concepts embodied in the Chapel programming language. (Now undergoing development, Chapel is intended to become a standard language for parallel computing that would surpass older such languages in both computational performance in the efficiency with which pre-existing code can be reused and new code written.) The aforementioned other concepts are those of distributions, domains, allocations, and access, as defined in a separate document called "A Semantic Framework for Domains and Distributions in Chapel" and linked to a language specification defined in another separate document called "Chapel Specification 0.3." The concept presented in the instant report is recognition that a data domain that was invented for Chapel offers a novel approach to distributing and processing data in a massively parallel environment. The concept is offered as a starting point for development of working descriptions of functions and data structures that would be necessary to implement interfaces to a compiler for transforming the aforementioned other concepts from their representations in Chapel source code to their run-time implementations.

James, Mark↗

In Pursuit of the FIP Effect in Late-Type Stellar Coronae

Spectral line data for several coronally active stars, in addition to EUVE Deep Survey light curves, have been analysed under this program. Much difficulty has been encountered in the study that has resulted in fewer stars being analysed than had been hoped. The difficulties stemmed from the analysis of low X-ray spectra taken with the ASCA satellite that produced results that are strongly discrepant with respect to the EUVE results. There is no obvious explanation for this, though it appears that analysis of ASCA data systematically underestimate metal abundance in hot plasmas. Consequently, the final emphasis in our analyses has been on EUVE data. Observed line profiles have being fitted in order to measure their fluxes using IDL software specially developed under this and parallel efforts.The observed line profiles deviate from pure gaussian forms, but we have found the benefits of using additional functional forms in the fitting process to be of only very small value for the lines with highest S/N. The resulting line fluxes have being processed in terms of the coronal EM using new techniques. Resulting EM distribution models are being used to finalize metallicity and abundance estimates for the stars in the program. Special account of the influence of missing lines in the spectral models has been taken.

Drake, Jeremy↗

Compiling global name-space parallel loops for distributed execution

Distributed memory machines do not provide hardware support for a global address space. Thus programmers are forced to partition the data across the memories of the architecture and use explicit message passing to communicate data between processors. The compiler support required to allow programmers to express their algorithms using a global name-space is examined. A general method is presented for analysis of a high level source program and its translation into a set of independently executing tasks communicating via messages. If the compiler has enough information, this translation can be carried out at compile time. Otherwise, run-time code is generated to implement the required data movement. The analysis required in both situations is described and the performance of the generated code on the Intel iPSC/2 is presented.

Koelbel, Charles↗

Influence of Antarctic and Greenland Continental Shelf Circulation on High‐Latitude Oceans in E3SM

The science objectives of this project are to simulate and understand the impacts of both deep-basin warm-water intrusions and land-ice melt on the continental shelf circulations and sea-ice distributions around the margins of Greenland and Antarctica. As well, the role of subsurface ocean heat from the Atlantic on declining sea-ice cover in the Arctic is explored. Mesoscale processes and fine bathymetry are implicated in cross-shelf property transports around both Greenland and Antarctica. Therefore, we configured and ran an atmospheric reanalysis-forced global ocean/sea-ice simulation on a grid that reduces from 8 km at the Equator to 2 km at the poles (UH8to2) with 60 vertical levels. It was produced using the Energy Exascale Earth System Model ‘‘HiLAT’’ code (E3SMv0-HiLAT) that uses the Parallel Ocean Program (POP) and CICE5 as its ocean and sea-ice components, respectively. Two main UH8to2 simulations were carried out: one for 1975-2009 and the other for July 2016-2020 after it was initialized from a 1/25° data-assimilative ocean/sea-ice prediction system ocean/sea-ice state. The UH8to2 is not coupled to an active land-ice model. Rather, land-ice melt is represented by observationally informed freshwater fluxes (FWFs). Short (multi-year) UH8to2 simulations were conducted to understand sensitivities when Greenland ice sheet (GrIS) melt is released only at the ocean surface or when it is distributed over the upper water column in accordance with fjord melt plume behavior; these cases were compared with a no GrIS melt case. West Greenland continental shelf currents were fastest in the vertical distribution case and an increase in baroclinic conversion at the shelf break associated with increased eddy kinetic energy was found relative to the surface release case. Further, salinity is lower and meltwater volume greater in the eastern Labrador Sea in the vertical distribution case. For the Arctic, the veracity of the UH8to2 was evaluated for 2017-2020 using available observations. Simulated seasonal sea-ice thickness and concentration are realistic, but the ice is unrealistically thin in the central and eastern Arctic in the fall. Comparisons of vertical sections of ocean temperature, salinity, and buoyancy collected from Ice-Tethered Profilers (ITPs) in the eastern Arctic in the fall and winter of 2019/2020 and co-located/concurrent UH8to2 fields show the stratification over the top 100 m of the water column is too low in the model, the simulated mixed layer too deep, and the simulated subsurface Atlantic Water (AW) too warm; these biases may contribute to the sea-ice biases. A model intercomparison study using the UH8to2 and a forced 1/25° regional Arctic ocean/sea-ice (uses the HYbrid Coordinate Ocean Model and CICE5) simulation further investigates the relationship between AW and sea-ice in the eastern Arctic. The models show a mesoscale-rich pulse of Atlantic Water extending into the eastern basin that reaches maximum intensity in late winter of 2018, after which it decreases in strength. Concurrent and co-located sea-ice melt or the inhibition of sea-ice growth is seen and is attributed to halocline mesoscale eddies doming into the mixed layer with convection bringing this heat into the vicinity of the sea-ice.

58 GEOSCIENCES↗

The evolution of concepts of vestibular peripheral information processing: toward the dynamic, adaptive, parallel processing macular model

In a letter to Robert Hooke, written on 5 February, 1675, Isaac Newton wrote "If I have seen further than certain other men it is by standing upon the shoulders of giants." In his context, Newton was referring to the work of Galileo and Kepler, who preceded him. However, every field has its own giants, those men and women who went before us and, often with few tools at their disposal, uncovered the facts that enabled later researchers to advance knowledge in a particular area. This review traces the history of the evolution of views from early giants in the field of vestibular research to modern concepts of vestibular organ organization and function. Emphasis will be placed on the mammalian maculae as peripheral processors of linear accelerations acting on the head. This review shows that early, correct findings were sometimes unfortunately disregarded, impeding later investigations into the structure and function of the vestibular organs. The central themes are that the macular organs are highly complex, dynamic, adaptive, distributed parallel processors of information, and that historical references can help us to understand our own place in advancing knowledge about their complicated structure and functions.

Review, Tutorial↗

System life and reliability modeling for helicopter transmissions

A computer program which simulates life and reliability of helicopter transmissions is presented. The helicopter transmissions may be composed of spiral bevel gear units and planetary gear units - alone, in series or in parallel. The spiral bevel gear units may have either single or dual input pinions, which are identical. The planetary gear units may be stepped or unstepped and the number of planet gears carried by the planet arm may be varied. The reliability analysis used in the program is based on the Weibull distribution lives of the transmission components. The computer calculates the system lives and dynamic capacities of the transmission components and the transmission. The system life is defined as the life of the component or transmission at an output torque at which the probability of survival is 90 percent. The dynamic capacity of a component or transmission is defined as the output torque which can be applied for one million output shaft cycles for a probability of survival of 90 percent. A complete summary of the life and dynamic capacity results is produced by the program.

Savage, M.↗

Parallel Conjugate Gradient: Effects of Ordering Strategies, Programming Paradigms, and Architectural Platforms

The Conjugate Gradient (CG) algorithm is perhaps the best-known iterative technique to solve sparse linear systems that are symmetric and positive definite. A sparse matrix-vector multiply (SPMV) usually accounts for most of the floating-point operations within a CG iteration. In this paper, we investigate the effects of various ordering and partitioning strategies on the performance of parallel CG and SPMV using different programming paradigms and architectures. Results show that for this class of applications, ordering significantly improves overall performance, that cache reuse may be more important than reducing communication, and that it is possible to achieve message passing performance using shared memory constructs through careful data ordering and distribution. However, a multi-threaded implementation of CG on the Tera MTA does not require special ordering or partitioning to obtain high efficiency and scalability.

Oliker, Leonid↗

Parallelization of an Object-Oriented Unstructured Aeroacoustics Solver

A computational aeroacoustics code based on the discontinuous Galerkin method is ported to several parallel platforms using MPI. The discontinuous Galerkin method is a compact high-order method that retains its accuracy and robustness on non-smooth unstructured meshes. In its semi-discrete form, the discontinuous Galerkin method can be combined with explicit time marching methods making it well suited to time accurate computations. The compact nature of the discontinuous Galerkin method also makes it well suited for distributed memory parallel platforms. The original serial code was written using an object-oriented approach and was previously optimized for cache-based machines. The port to parallel platforms was achieved simply by treating partition boundaries as a type of boundary condition. Code modifications were minimal because boundary conditions were abstractions in the original program. Scalability results are presented for the SCI Origin, IBM SP2, and clusters of SGI and Sun workstations. Slightly superlinear speedup is achieved on a fixed-size problem on the Origin, due to cache effects.

Baggag, Abdelkader↗

The PISCES 2 parallel programming environment

PISCES 2 is a programming environment for scientific and engineering computations on MIMD parallel computers. It is currently implemented on a flexible FLEX/32 at NASA Langley, a 20 processor machine with both shared and local memories. The environment provides an extended Fortran for applications programming, a configuration environment for setting up a run on the parallel machine, and a run-time environment for monitoring and controlling program execution. This paper describes the overall design of the system and its implementation on the FLEX/32. Emphasis is placed on several novel aspects of the design: the use of a carefully defined virtual machine, programmer control of the mapping of virtual machine to actual hardware, forces for medium-granularity parallelism, and windows for parallel distribution of data. Some preliminary measurements of storage use are included.

Pratt, Terrence W.↗

An open, parallel I/O computer as the platform for high-performance, high-capacity mass storage systems

APTEC Computer Systems is a Portland, Oregon based manufacturer of I/O computers. APTEC's work in the context of high density storage media is on programs requiring real-time data capture with low latency processing and storage requirements. An example of APTEC's work in this area is the Loral/Space Telescope-Data Archival and Distribution System. This is an existing Loral AeroSys designed system, which utilizes an APTEC I/O computer. The key attributes of a system architecture that is suitable for this environment are as follows: (1) data acquisition alternatives; (2) a wide range of supported mass storage devices; (3) data processing options; (4) data availability through standard network connections; and (5) an overall system architecture (hardware and software designed for high bandwidth and low latency). APTEC's approach is outlined in this document.

Abineri, Adrian↗

Multi-GPU porting of a phase-change cascaded lattice Boltzmann method for three-dimensional pool boiling simulations

The Lattice Boltzmann method (LBM) has proven effective in simulating phase-change phenomena, such as melting, solidification, evaporation, and boiling. In this work, we develop a highly parallelized multi-GPU implementation of LBM for three-dimensional pool boiling simulations. The code is based on the OpenACC programming model, which enables the code to be deployed efficiently on multi-core CPUs, GPUs, and potentially other accelerators, without the need for architecture-specific rewrites. To support large-scale simulations, the domain is decomposed and distributed across multiple compute nodes using MPI. We demonstrate that the code exhibits excellent scaling properties, with ideal strong-scaling running with up to 256 GPUs on the MareNostrum5 cluster.

97 MATHEMATICS AND COMPUTING↗

SAIGE-GPU: accelerating genome- and phenome-wide association studies using GPUs

Genome-wide association studies (GWAS) at biobank scale are computationally intensive, especially for admixed populations requiring robust statistical models. SAIGE is a widely used method for generalized linear mixed-model GWAS but is limited by its CPU-based implementation, making phenome-wide association studies impractical for many research groups. We developed SAIGE-GPU, a GPU-accelerated version of SAIGE that replaces CPU-intensive matrix operations with GPU-optimized kernels. The core innovation is distributing genetic relationship matrix calculations across GPUs and communication layers. Applied to 2068 phenotypes from 635 969 participants in the Million Veteran Program, including diverse and admixed populations, SAIGE-GPU achieved a 5-fold speedup in mixed model fitting on supercomputing infrastructure and cloud platforms. We further optimized the variant association testing step through multi-core and multi-trait parallelization. Deployed on Google Cloud Platform and Azure, the method provided substantial cost and time savings. Source code and binaries are available for download at https://github.com/saigegit/SAIGE/tree/SAIGE-GPU-1.3.3. A code snapshot is archived at Zenodo for reproducibility (DOI: [10.5281/zenodo.17642591]). SAIGE-GPU is available in a containerized format for use across HPC and cloud environments and is implemented in R/C++ and runs on Linux systems.

Rodriguez, Alex [Argonne National Laboratory (ANL)↗

Mentat: An object-oriented macro data flow system

Mentat, an object-oriented macro data flow system designed to facilitate parallelism in distributed systems, is presented. The macro data flow model is a model of computation similar to the data flow model with two principal differences: the computational complexity of the actors is much greater than in traditional data flow systems, and there are persistent actors that maintain state information between executions. Mentat is a system that combines the object-oriented programming paradigm and the macro data flow model of computation. Mentat programs use a dynamic structure called a future list to represent the future of computations.

Grimshaw, Andrew S.↗

Software For Drawing Design Details Concurrently

Software system containing five computer-aided-design programs enables more than one designer to work on same part or assembly at same time. Reduces time necessary to produce design by implementing concept of parallel or concurrent detailing, in which all detail drawings documenting three-dimensional model of part or assembly produced simultaneously, rather than sequentially. Keeps various detail drawings consistent with each other and with overall design by distributing changes in each detail to all other affected details.

Crosby, Dewey C., III↗

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↗

The use of Ada in distributed simulations

The increasing need for detailed information about systems of continually growing complexity enhances steadily the demands regarding the employed models. The present investigation is concerned with work related to the development of high-performance computer hardware intended for the support of the real-time simulation of jet engines. The hardware is structured in the form of a network of communicating microprocessors running in parallel. The need for a higher-order language capability for programming such a network has led to the research considered in this study. Attention is given to the hardware which is being developed, an abstract model, programming language considerations, research considerations, research objectives, Ada tasks, Ada packages, the Ada model, the mapping of the model to the hardware, a precompiler example, and the advantages of Ada.

Collins, W. R.↗