Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “parallel data structures”

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 127 records · Page 7

The status of the Japanese material properties handbook and the challenge to facilitate structural design criteria for DEMO in-vessel components

This work summarizes the current status of the material properties handbook for a structural design using Japanese reduced-activation ferritic/martensitic steel F82H. Specifically, the key structural parameters, e.g. time-independent/dependent design stresses and fatigue design curves, were determined by following the French structural design code RCC-MRx. Moreover, under the Japan–U.S. collaboration, tensile data were newly added to the benchmark heavy irradiation data up to 80 dpa, as critical input information in the intermediate check and review in Japan. Furthermore, the status of structural material data and the near-term and long-term issues were clarified by the evaluation using the attribute guides. In parallel, the structural design approaches, which were newly introduced and extended to cope with the structural design issues under the complex environmental conditions peculiar to the DEMO reactor, were noted with the initial R&D results. Of the many design issues, the multi-axial loading conditions due to the complexity of the DEMO reactor as well as the coolant compatibility and the irradiation effect are mentioned. For example, in the paper, multi-axial fatigue–creep testing and evaluation using the modified universal slope method and brittle/ductile fracture testing and evaluation using the local approach are explained toward DEMO.

70 PLASMA PHYSICS AND FUSION TECHNOLOGY↗

Axom

The Axom library consists of n collection of software components that provide core computer science infrastructure capabilities that can be shared by diverse high performance computing (HPC) applications. The current set of capabilities that Axom provides includes: Customizable support for error/warning and diagnostic message reporting and coordination among components of integrated applications (e.g., physics packages, libraries, etc.); Scalable parallel aggregation and filtering of message logging; In memory datastore for hierarchical, mesh-aware simulation data. The datastore supports data description, allocation, deallocation. parallel l/0, etc; Mesh data model abstractions that enable the development of mesh-based computational algorithms that work with many diverse, application· specific mesh types; and Computational geometry primitives for developing high performance parallel algorithms based on spatial geometry and meshes, e.g., spatial acceleration data structures, sets, maps, relations, etc.

Hornung, RichardD.↗

MARBLES (Multi-scale Adaptively Refined Boltzmann LatticE Solver) [SWR-23-37]

MARBLES (Multi-scale Adaptively Refined Boltzmann LatticE Solver) is an open-source computational fluid dynamics package powered by the lattice Boltzmann equations and built on AMReX. In the lattice Boltzmann method, local collisions between meso-scale fictitious particles drive the governing equations which enables MARBLES to easily simulate flow around complex and/or moving geometry without the generation of a body-conforming mesh. Using AMReX data structures and operations ensures a high level of computational performance and parallel scaling on heterogenous architectures while also naturally supporting locally enhanced grid resolution and fidelity through automatic mesh refinement. New domains and problem definitions are easily specified through an input file with examples and guidance on all options and variables provided in the MARBLES documentation.

Henry de Frahan, Marc↗

PeleLMeX: an AMR Low Mach Number Reactive Flow Simulation Code without level sub-cycling

PeleLMeX simulates chemically reacting low Mach number flows with block-structured adaptive mesh refinement (AMR). The code is built upon the AMReX library, which provides the underlying data structures and tools to manage and operate on them across massively parallel computing architectures. PeleLMeX algorithmic features are inherited from its predecessor PeleLM but key improvements allow representation of more complex physical processes. Together with its compressible flow counterpart PeleC, the thermo-chemistry library PelePhysics and the multi-physics library PeleMP, it forms the Pele suite of open-source reactive flow simulation codes.

97 MATHEMATICS AND COMPUTING↗

Geopotential Error Analysis from Satellite Gradiometer and Global Positioning System Observables on Parallel Architecture

The recovery of a high resolution geopotential from satellite gradiometer observations motivates the examination of high performance computational techniques. The primary subject matter addresses specifically the use of satellite gradiometer and GPS observations to form and invert the normal matrix associated with a large degree and order geopotential solution. Memory resident and out-of-core parallel linear algebra techniques along with data parallel batch algorithms form the foundation of the least squares application structure. A secondary topic includes the adoption of object oriented programming techniques to enhance modularity and reusability of code. Applications implementing the parallel and object oriented methods successfully calculate the degree variance for a degree and order 110 geopotential solution on 32 processors of the Cray T3E. The memory resident gradiometer application exhibits an overall application performance of 5.4 Gflops, and the out-of-core linear solver exhibits an overall performance of 2.4 Gflops. The combination solution derived from a sun synchronous gradiometer orbit produce average geoid height variances of 17 millimeters.

Schutz, Bob E.↗

An Expert System for the Development of Efficient Parallel Code

We have built the prototype of an expert system to assist the user in the development of efficient parallel code. The system was integrated into the parallel programming environment that is currently being developed at NASA Ames. The expert system interfaces to tools for automatic parallelization and performance analysis. It uses static program structure information and performance data in order to automatically determine causes of poor performance and to make suggestions for improvements. In this paper we give an overview of our programming environment, describe the prototype implementation of our expert system, and demonstrate its usefulness with several case studies.

Jost, Gabriele↗

MAUS: the MICE analysis user software

The Muon Ionization Cooling Experiment (MICE) collaboration has developed the MICE Analysis User Software (MAUS) to simulate and analyze experimental data. It serves as the primary codebase for the experiment, providing for offline batch simulation and reconstruction as well as online data quality checks. The software provides both traditional particle-physics functionalities such as track reconstruction and particle identification, and accelerator physics functions, such as calculating transfer matrices and emittances. The code design is object orientated, but has a top-level structure based on the Map-Reduce model. This allows for parallelization to support live data reconstruction during data-taking operations. MAUS allows users to develop in either Python or C++ and provides APIs for both. Various software engineering practices from industry are also used to ensure correct and maintainable code, including style, unit and integration tests, continuous integration and load testing, code reviews, and distributed version control. The software framework and the simulation and reconstruction capabilities are described.

47 OTHER INSTRUMENTATION↗

Design and implementation of a parallel unstructured Euler solver using software primitives

This paper is concerned with the implementation of a three-dimensional unstructured-grid Euler solver on massively parallel distributed-memory computer architectures. The goal is to minimize solution time by achieving high computational rates with a numerically efficient algorithm. An unstructured multigrid algorithm with an edge-based data structure has been adopted, and a number of optimizations have been devised and implemented to accelerate the parallel computational rates. The implementation is carried out by creating a set of software tools, which provide an interface between the parallelization issues and the sequential code, while providing a basis for future automatic run-time compilation support. Large practical unstructured grid problems are solved on the Intel iPSC/860 hypercube and Intel Touchstone Delta machine. The quantitative effects of the various optimizations are demonstrated, and we show that the combined effect of these optimizations leads to roughly a factor of 3 performance improvement. The overall solution efficiency is compared with that obtained on the Cray Y-MP vector supercomputer.

Das, R.↗

A New Capability of E4D For 3D Parallel Joint Inversion of DC Resistivity And Traveltime Data on Unstructured Mesh

A major challenge in interpreting geophysical data is how to derive consistent three-dimensional (3D) earth models of different physical properties from spatially and temporally limited measurements. Joint inversion with cross-gradient constraints is an approach to find such models by imposing structural similarities between different physical parameters. We have developed a parallel distributed-memory joint inversion code for direct-current (DC) resistivity and traveltime data using the cross-gradient constraint on unstructured mesh. The code utilizes existing E4D framework for parallel forward simulation, distributed storage and computation of the Jacobian matrix of forward operator, and parallel execution of matrix-vector multiplication during inversion. Besides, the joint inversion is solved by nonlinear conjugate gradient algorithm parallelized for DC resistivity and traveltime data. The joint inversion capability of E4D was tested using synthetic data from cross-borehole DC resistivity and traveltime data. The results indicate that the shape and size of the anomalies from the joint inversion are more reliable than those from separate inversions.

58 GEOSCIENCES↗

Filamentary structures in the magnetotail lobes

The observations of plasmas which may be the source population for polar cap arcs are reported. This population consists of energetic plasma contained within filamentary structures aligned approximately parallel to the XZ plane. Using a combination of plasma, particle, and magnetic field data for several events, it is established that the filaments have their origin in the plasma sheet or its adjacent boundary layer, and that the structures protrude into the lobe region. In a number of cases, a correlation between the convection pattern and the IMF B(Z) can be inferred. This is in agreement with the observed characteristics of polar cap arcs, observations of which are correlated with a northward directed IMF. The presence of field-aligned currents suggests that field-aligned acceleration may occur between the observing satellite and earth.

Huang, C. Y.↗

Virtual Log-Structured Storage for High-Performance Streaming

Over the past decade, given the higher number of data sources (e.g., Cloud applications, Internet of things) and critical business demands, Big Data transitioned from batch-oriented to real-time analytics. Stream storage systems, such as Apache Kafka, are well known for their increasing role in real-time Big Data analytics. For scalable stream data ingestion and processing, they logically split a data stream topic into multiple partitions. Stream storage systems keep multiple data stream copies to protect against data loss while implementing a stream partition as a replicated log. This architectural choice enables simplified development while trading cluster size with performance and the number of streams optimally managed. This paper introduces a shared virtual log-structured storage approach for improving the cluster throughput when multiple producers and consumers write and consume in parallel data streams. Stream partitions are associated with shared replicated virtual logs transparently to the user, effectively separating the implementation of stream partitioning (and data ordering) from data replication (and durability). We implement the virtual log technique in the KerA stream storage system. When comparing with Apache Kafka, KerA improves the cluster ingestion throughput by up to 4x when multiple producers write over hundreds of data streams.

consistent stream ordering↗

Wing-Body Aeroelasticity Using Finite-Difference Fluid/Finite-Element Structural Equations on Parallel Computers

In recent years significant advances have been made for parallel computers in both hardware and software. Now parallel computers have become viable tools in computational mechanics. Many application codes developed on conventional computers have been modified to benefit from parallel computers. Significant speedups in some areas have been achieved by parallel computations. For single-discipline use of both fluid dynamics and structural dynamics, computations have been made on wing-body configurations using parallel computers. However, only a limited amount of work has been completed in combining these two disciplines for multidisciplinary applications. The prime reason is the increased level of complication associated with a multidisciplinary approach. In this work, procedures to compute aeroelasticity on parallel computers using direct coupling of fluid and structural equations will be investigated for wing-body configurations. The parallel computer selected for computations is an Intel iPSC/860 computer which is a distributed-memory, multiple-instruction, multiple data (MIMD) computer with 128 processors. In this study, the computational efficiency issues of parallel integration of both fluid and structural equations will be investigated in detail. The fluid and structural domains will be modeled using finite-difference and finite-element approaches, respectively. Results from the parallel computer will be compared with those from the conventional computers using a single processor. This study will provide an efficient computational tool for the aeroelastic analysis of wing-body structures on MIMD type parallel computers.

Byun, Chansup↗

Tail queues: A multi-threaded matching architecture

As we approach exascale, computational parallelism will have to drastically increase in order to meet throughput targets. Many–core architectures have exacerbated this problem by trading reduced clock speeds, core complexity, and computation throughput for increasing parallelism. This presents two major challenges for communication libraries such as MPI: the library must leverage the performance advantages of thread level parallelism and avoid the scalability problems associated with increasing the number of processes to that scale. Hybrid programming models, such as MPI+X, have been proposed to address these challenges. MPI THREAD MULTIPLE is MPI's thread safe mode. While there has been work to optimize it, it largely remains non–performant in most implementations. While current applications avoid MPI multithreading due to performance concerns, it is expected to be utilized in future applications. One of the major synchronous data structures required by MPI is the matching engine. In this paper, we present a parallel matching algorithm that can improve MPI matching for multithreaded applications. We then perform a feasibility study to demonstrate the performance benefit of the technique.

97 MATHEMATICS AND COMPUTING↗

The design and implementation of a parallel unstructured Euler solver using software primitives

This paper is concerned with the implementation of a three-dimensional unstructured grid Euler-solver on massively parallel distributed-memory computer architectures. The goal is to minimize solution time by achieving high computational rates with a numerically efficient algorithm. An unstructured multigrid algorithm with an edge-based data structure has been adopted, and a number of optimizations have been devised and implemented in order to accelerate the parallel communication rates. The implementation is carried out by creating a set of software tools, which provide an interface between the parallelization issues and the sequential code, while providing a basis for future automatic run-time compilation support. Large practical unstructured grid problems are solved on the Intel iPSC/860 hypercube and Intel Touchstone Delta machine. The quantitative effect of the various optimizations are demonstrated, and we show that the combined effect of these optimizations leads to roughly a factor of three performance improvement. The overall solution efficiency is compared with that obtained on the CRAY-YMP vector supercomputer.

Das, R.↗

DARMA-MPI Interoperability WBS 2.3.1.04 Milestone 15 (ECP Milestone Report)

DARMA (Distributed Asynchronous Resilient Models for Applications) is a runtime library developed as part of the the Sandia ATDM (Advanced Technology Development and Mitigation) program. DARMA supports applications within 2.2.5.03 ADNN03-ASC ATDM SNL Application, which includes a number of applications featuring dynamic physics which requires load balancing and asynchronous communication for high performance. We have implemented a modern C++ programming model that can enable dynamic, asynchronous communication on top of existing data structures from a serial or MPI code. DARMA development has occurred in parallel with a verification milestone for ATDM in FY18. For FY19, DARMA will impact ATDM by enabling the performance benefits of a dynamic runtime through only incremental changes to existing verified MPI codes. The results presented here demonstrate the DARMA development process for an MPI mini-app, showing a 3-4x improvement in performance for a challenging problem relative to the parent MPI code and coming within 25 percent of the theoretically optimal performance achievable from a perfect, fine-grained load balancer for most cases.

97 MATHEMATICS AND COMPUTING↗

Measurements at the Facility for Experiments of Nuclear Reactions in Stars (FENRIS) (Final Technical Report)

Nuclear reactions in stars have transformed the universe since the Big Bang, turning hydrogen and helium into all of the elements we see around us today. These reactions fuel a star throughout its lifetime. When the star burns out, its ashes are ejected into space to enrich the next generation of stars so to understand the origin of the elements in the cosmos, we must learn how stars burn their fuel. In this stellar burning, the rates of nuclear reactions are key. The rates can be determined by recreating the reactions in the laboratory, but often they occur too rarely to measure at the low energies characteristic of stellar burning. Novel, indirect measurements must be used. With support from the Department of Energy Office of Science, a research program has been developed to perform such measurements, primarily using the Enge split-pole spectrograph at the Triangle Universities Nuclear Laboratory (TUNL). High-energy nuclear reactions coupled with theoretical models were used to ascertain the rate of the low-energy nuclear reactions occurring in stars. Detailed analysis of the data reveals the structure of nuclei and how they affect stellar burning. In parallel to these experimental efforts, theoretical tools were developed to identify which nuclear reactions are most critical for understanding stars, thus discovering priorities for future measurements. This complementary suite of experiments and theoretical calculations can be used to help answer one of the key questions facing the physics community: How did visible matter come into being and how did it evolve?

73 NUCLEAR PHYSICS AND RADIATION PHYSICS↗

The design and implementation of a parallel unstructured Euler solver using software primitives

This paper is concerned with the implementation of a 3D unstructured-grid Euler-solver on massively parallel distributed-memory computer architectures. The goal is to minimize solution time by achieving high computational rates with a numerically efficient algorithm. An unstructured multigrid algorithm with an edge-based data-structure has been adopted, and a number of optimizations have been devised and implemented in order to accelerate the parallel computational rates. The implementation is carried out by creating a set of software tools, which ease the implementation of computational problems on parallel architecture machines by relieving the user of the low-level machine specific issues. The quantitative effect of the various optimizations are demonstrated, and we show that the combined effect of these optimizations leads to roughly a factor of three performance improvement. The overall solution efficiency is compared with that obtained on the CRAY-YMP vector supercomputer.

Das, R.↗

Directions in parallel programming: HPF, shared virtual memory and object parallelism in pC++

Fortran and C++ are the dominant programming languages used in scientific computation. Consequently, extensions to these languages are the most popular for programming massively parallel computers. We discuss two such approaches to parallel Fortran and one approach to C++. The High Performance Fortran Forum has designed HPF with the intent of supporting data parallelism on Fortran 90 applications. HPF works by asking the user to help the compiler distribute and align the data structures with the distributed memory modules in the system. Fortran-S takes a different approach in which the data distribution is managed by the operating system and the user provides annotations to indicate parallel control regions. In the case of C++, we look at pC++ which is based on a concurrent aggregate parallel model.

Bodin, Francois↗