Search NASA⌕ Search

SEARCH · Search NASA

Results for “parallel implementation”

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 487 records · Page 27

AnalyzeThat: A Programmable Shared-Memory System for an Array of Processing-In-Memory Devices

Processing In Memory (PIM), the concept of integrating processing directly with memory, has been attracting a lot of attention since PIM can assist in overcoming the throughput limitation caused by data movement between CPU and memory. The challenge, however, is that it requires the programmers to have a deep understanding of the PIM architecture to maximize the benefits such as data locality and parallel thread execution on multiple PIM devices. In this study, we present AnalyzeThat, a programmable shared-memory system for parallel data processing with PIM devices. Thematic to AnalyzeThat is a rich PIM-Aware Data Structure (PADS), which is an encapsulation that integrally ties together the data, the analysis tasks and the runtime needed to interface with the PIM device array. The PADS abstraction provides (i) a key-value data container that allows programmers to easily store data on multiple PIMs, (ii) a suite of parallel operations with which users can easily implement data analysis applications, and (iii) a runtime, hidden to programmers, which provides the mechanisms needed to overlay both the data and the tasks on the PIM device array in an intelligent fashion, based on PIM-specific information collected from the hardware. We have developed a PIM emulation framework called AnalyzeThat. Our experimental evaluation with representative data analytics applications suggests that the proposed system can significantly reduce the PIM programming effort without losing its technology benefits.

97 MATHEMATICS AND COMPUTING↗

Towards Highly Scalable Ab Initio Molecular Dynamics (AIMD) Simulations on the Intel Knights Landing Manycore Processor

The Ab Initio Molecular Dynamics (AIMD) method allows scientists to treat the dynamics of molecular and condensed phase systems while retaining a first-principles-based description of their interactions. This extremely important method has tremendous computational requirements, because the electronic Schr¨odinger equation, approximated using Kohn-Sham Density Functional Theory (DFT), is solved at every time step. With the advent of manycore architectures, application developers have a significant amount of processing power within each compute node that can only be exploited through massive parallelism. A compute intensive application such as AIMD forms a good candidate to leverage this processing power. In this paper, we focus on adding thread level parallelism to the plane wave DFT methodology implemented in NWChem. Through a careful optimization of tall-skinny matrix products, which are at the heart of the Lagrange multiplier and nonlocal pseudopotential kernels, as well as 3D FFTs, our OpenMP implementation delivers excellent strong scaling on the latest Intel Knights Landing (KNL) processor. We assess the efficiency of our Lagrange multiplier kernels by building a Roofline model of the platform, and verify that our implementation is close to the roofline for various problem sizes. Finally, we present strong scaling results on the complete AIMD simulation for a 64 water molecules test case, that scales up to all 68 cores of the Knights Landing processor.

Environmental Molecular Sciences Laboratory↗

Individual and Simultaneous Imaging of ⁹⁹mTc and ¹⁷⁷Lu With a Preclinical Broad Energy-Spectrum CZT-Based SPECT

Radiopharmaceutical therapy has demonstrated a high efficacy in the treatment of various tumor types. One of the radionuclides already used in the clinic is 177Lu, a beta emitter that also emits several photons imageable with SPECT. Quantitative imaging of 177Lu is critical for developing new radiopharmaceuticals. Energy resolution is an important factor when imaging multiple photon emissions. Solid-state detectors offer a superior performance over scintillators, that are commonly used in commercially-available preclinical SPECT scanners. This study demonstrates the feasibility of 99m Tc and 177Lu quantitative imaging in mouse phantoms, individually and simultaneously, with a SPECT prototype built with four CdZnTe (CZT) detector heads and a custom-designed and energy-optimized parallel-hole tungsten collimator. With a custom implementation of the one-step late (OSL) image reconstruction algorithm, the system is capable of imaging energies from ~70 keV to 250 keV. Above 250 keV, images were significantly affected by septal penetration, consistent with the collimator design. A recovery coefficient within 25% was obtained for activities as low as 2 kBq/mL for 99m Tc and 45% for 177Lu. Compared to a commercial NaI-based preclinical SPECT (VECTor4/CT), our prototype showed a superior energy resolution (< 5% at 140 keV), a similar uniformity with a high-compact design.

Encarnação, Pedro M C C↗

Trace: a high-throughput tomographic reconstruction engine for large-scale datasets

Abstract Background Modern synchrotron light sources and detectors produce data at such scale and complexity that large-scale computation is required to unleash their full power. One of the widely used imaging techniques that generates data at tens of gigabytes per second is computed tomography (CT). Although CT experiments result in rapid data generation, the analysis and reconstruction of the collected data may require hours or even days of computation time with a medium-sized workstation, which hinders the scientific progress that relies on the results of analysis. Methods We present Trace, a data-intensive computing engine that we have developed to enable high-performance implementation of iterative tomographic reconstruction algorithms for parallel computers. Trace provides fine-grained reconstruction of tomography datasets using both (thread-level) shared memory and (process-level) distributed memory parallelization. Trace utilizes a special data structure called replicated reconstruction object to maximize application performance. We also present the optimizations that we apply to the replicated reconstruction objects and evaluate them using tomography datasets collected at the Advanced Photon Source. Results Our experimental evaluations show that our optimizations and parallelization techniques can provide 158× speedup using 32 compute nodes (384 cores) over a single-core configuration and decrease the end-to-end processing time of a large sinogram (with 4501 × 1 × 22,400 dimensions) from 12.5 h to <5 min per iteration. Conclusion The proposed tomographic reconstruction engine can efficiently process large-scale tomographic data using many compute nodes and minimize reconstruction times.

46 INSTRUMENTATION RELATED TO NUCLEAR SCIENCE AND ↗

Predictive Modeling of Aging and Degradation of Materials in Extreme Environments.

In order to accurately describe defect accumulation in heterogeneous microstructures and under complex irradiation conditions, simulation methods are needed that can explicitly account for the effect of nonhomogeneous microstructures on damage accumulation. In this project, an advanced simulation tool called spatially resolved stochastic cluster dynamics (SRSCD) is developed for this purpose. The proposed approach relies on solving spatially resolved coupled rate equations of standard cluster dynamics methods in a kinetic Monte Carlo scheme. Large-scale simulations of radiation damage in polycrystalline materials are enabled through several improvements made to this method, including a pseudo-adaptive meshing scheme for cascade implantation and implementation of this method in a synchronous parallel kinetic Monte Carlo framework.

36 MATERIALS SCIENCE↗

Particle Mass Flow Control for High-Temperature Concentrating Solar Receivers

This report summarizes the results of a two-year project funded by the U.S. Department of Energy's Solar Energy Technologies Office (SuNLaMP 1506) to evaluate the performance of high-temperature (>700 °C) particle receivers for concentrating solar power (see Appendix A for project information). In the first year, novel particle release patterns were designed and tested to increase the effective solar absorptance of the particle curtain. Modeling results showed that increasing the magnitude and frequency of different wave-like patterns increased the effective absorptance and thermal efficiency by several percentage points, depending on the mass flow rate. Tests showed that triangular-wave, square-wave, and parallel-curtain particle release patterns could be implemented and maintained at flow rates of ~10 kg/s/m. The second year of the project focused on the development and testing of particle mass-flow control and measurement methods. An automated slide gate controlled by the outlet temperature of the particles was designed and tested. Testing demonstrated that the resolution accuracy of the slide-gate positioning was less than ~1 mm, and the speed of the slide gate enabled rapid adjustments to accommodate changes in the irradiance to maintain a desired outlet temperature range. Different in-situ particle mass-flow measurement techniques were investigated, and two were tested. The in-situ microwave sensor was found to be unreliable and sensitive to variations in particle flow patterns. However, the in-situ weigh hopper using load cells was found to provide reliable and repeatable measurements of real-time in-situ particle mass flow. On-sun tests were performed to determine the thermal efficiency of the receiver as a function of mass flow rate, particle temperature, and irradiance. Models of the tests were also developed and compared to the tests.

14 SOLAR ENERGY↗

Frameworks, Algorithms, and Scalable Technologies for Mathematics (FASTMath) SciDAC Institute

The FASTMath SciDAC Institute addressed two key challenges that application scientists faced at the beginning of SciDAC-3. First, FASTMath helped them continue to improve the quality of their simulations by increasing accuracy and reliability of both their software and algorithms. Second, FASTMath helped them adapt their computations to make effective use of high-end computing facilities acquired by DOE over the past five years. This required the development of new mathematical algorithms that were appropriate for the physics problems being solved, implementations that scaled to million-way parallelism, and software that effectively leveraged both distributed memory and on-node parallelism. The Rensselaer Polytechnic Institute team’s efforts focused on the unstructured mesh technologies developed by FASTMath.

97 MATHEMATICS AND COMPUTING↗

Parallelization of a Proxy Transport App Using ComputeCPP and SYCL

This document details the attempts to parallelize a multi-group Monte Carlo proxy app using SYCL and the ComputeCPP Community Edition compiler. SYCL is a standard set by the Khronos Group and is described as a, “cross-platform abstraction layer that builds on the underlying concepts, portability and efficiency of OpenCL that enables code for heterogeneous processors to be written in a “single-source” style using completely standard C++.” ComputeCpp Community Edition (CE) is a heterogeneous parallel programming platform that provides a conformant implementation of the SYCL™ 1.2.1 Khronos specification. ComputeCPP provides a compiler and an SDK containing a build system to improve the usability of the compiler. The supported OpenCL 1.2 platforms for ComputeCpp are AMD® and Intel®, with experimental support for PTX which is used on Nvidia graphics cards as well as experimental support for ARM chips. All testing reported in this document was done on the Darwin computer cluster using an Nvidia GTX Titan X graphics card. Since ComputeCPP does not support using this card with OpenCL, ComputeCPP’s experimental PTX64 bit-code generation was used to generate device code.

73 NUCLEAR PHYSICS AND RADIATION PHYSICS↗

PETSc/TAO Users Manual V.3.21

This manual describes the use of the Portable, Extensible Toolkit for Scientific Computation (PETSc) and the Toolkit for Advanced Optimization (TAO) for the numerical solution of partial differential equations (PDEs) and related problems on high-performance computers. PETSc/TAO is a suite of data structures and routines that provide the building blocks for implementing large-scale application codes on parallel (and serial) computers. PETSc uses the MPI standard for all distributed memory communication. PETSc/TAO includes a large suite of parallel linear solvers, nonlinear solvers, time integrators, and optimizers that may be used in application codes written in Fortran, C, C++, and Python (via petsc4py; see Getting Started ). The library is organized hierarchically, enabling users to employ the abstraction level most appropriate for a particular problem. By using techniques of object-oriented programming, PETSc provides enormous flexibility for users.

97 MATHEMATICS AND COMPUTING↗

PETSc/TAO Users Manual Revision 3.22

This manual describes the use of the Portable, Extensible Toolkit for Scientific Computation (PETSc) and the Toolkit for Advanced Optimization (TAO) for the numerical solution of partial differential equations (PDEs) and related problems on high-performance computers. PETSc/TAO is a suite of data structures and routines that provide the building blocks for implementing large-scale application codes on parallel (and serial) computers. PETSc uses the MPI standard for all distributed memory communication.

97 MATHEMATICS AND COMPUTING↗

PETSc/TAO Users Manual Revision 3.23

This manual describes the use of the Portable, Extensible Toolkit for Scientific Computation (PETSc) and the Toolkit for Advanced Optimization (TAO) for the numerical solution of partial differential equations (PDEs) and related problems on high-performance computers. PETSc/TAO is a suite of data structures and routines that provide the building blocks for implementing large-scale application codes on parallel (and serial) computers. PETSc uses the MPI standard for all distributed memory communication.

97 MATHEMATICS AND COMPUTING↗

PETSc/TAO Users Manual Revision 3.24

This manual describes the use of the Portable, Extensible Toolkit for Scientific Computation (PETSc) and the Toolkit for Advanced Optimization (TAO) for the numerical solution of partial differential equations (PDEs) and related problems on high-performance computers. PETSc/TAO is a suite of data structures and routines that provide the building blocks for implementing large-scale application codes on parallel (and serial) computers. PETSc uses the MPI standard for all distributed memory communication.

97 MATHEMATICS AND COMPUTING↗

PETSc/TAO Users Manual Revision 3.25

This manual describes the use of the Portable, Extensible Toolkit for Scientific Computation (PETSc) and the Toolkit for Advanced Optimization (TAO) for the numerical solution of partial differential equations (PDEs) and related problems on high-performance computers. PETSc/TAO is a suite of data structures and routines that provide the building blocks for implementing large-scale application codes on parallel (and serial) computers. PETSc uses the MPI standard for all distributed memory communication.

96 KNOWLEDGE MANAGEMENT AND PRESERVATION↗

Parallelization techniques for quantum simulation of fermionic systems

Mapping fermionic operators to qubit operators is an essential step for simulating fermionic systems on a quantum computer. We investigate how the choice of such a mapping interacts with the underlying qubit connectivity of the quantum processor to enable (or impede) parallelization of the resulting Hamiltonian-simulation algorithm. It is shown that this problem can be mapped to a path coloring problem on a graph constructed from the particular choice of encoding fermions onto qubits and the fermionic interactions onto paths. The basic version of this problem is called the weak coloring problem. Taking into account the fine-grained details of the mapping yields what is called the strong coloring problem, which leads to improved parallelization performance. A variety of illustrative analytical and numerical examples are presented to demonstrate the amount of improvement for both weak and strong coloring-based parallelizations. Our results are particularly important for implementation on near-term quantum processors where minimizing circuit depth is necessary for algorithmic feasibility.

97 MATHEMATICS AND COMPUTING↗

Multiplexed photoinjector optimization for high-repetition-rate free-electron lasers

The multiplexing capabilities of superconducting X-ray free-electron lasers (FELs) have gained much attention in recent years. The demanding requirements for photon properties from multiple undulator lines necessitate more flexible beam manipulation techniques to achieve the goal of “beam on demand”. In this paper, we investigate a multiplexed configuration for the photoinjector of high-repetition-rate FELs that aims to simultaneously provide low-emittance electron beams of different charges. A parallel, multi-objective genetic algorithm is implemented for the photoinjector parameter optimization. The proposed configuration could drastically enhance the flexibility of beam manipulation to improve multiplexing capabilities and realize the full potential of the facility.

47 OTHER INSTRUMENTATION↗

Dynamic Phasor Modeling of Three Phase Voltage Source Inverters

With the increase in the development and implementation of distributed energy resources, application of parallel connected inverters is increasing and as a result having accurate modeling and simulation tools that can help in the design, analysis and stability assessment of the grid is of great importance. Development of fundamental methods that can achieve accurate, reliable, and computationally efficient results can be very beneficial. Application of Dynamic phasor (DP) modeling method has been limited to study of limited harmonics and small combination of interconnected converters due to the complexity associated with developing models that describe larger systems. In this paper, application of DP modeling method is expanded to model any number of parallel connected three phase voltage source inverter (VSI) with inclusion of a wider harmonic content including fundamental, subharmonics, inter-harmonics, switching frequency and their sidebands. Results achieved from this modeling method is compared with conventional average model as well as detailed switching model and the effect of inclusion of wider harmonic content on accuracy of DP modeling method is demonstrated.

Xue, Yaosuo↗

A performance analysis of ensemble averaging for high fidelity turbulence simulations at the strong scaling limit

We analyze the potential performance benefits of estimating expected quantities in large eddy simulations of turbulent flows using true ensembles rather than ergodic time averaging. Multiple realizations of the same flow are simulated in parallel, using slightly perturbed initial conditions to create unique instantaneous evolutions of the flow field. Each realization is then used to calculate statistical quantities. Provided each instance is sufficiently de-correlated, this approach potentially allows considerable reduction in the time to solution beyond the strong scaling limit for a given accuracy. This study focuses on the theory and implementation of the methodology in Nek5000, a massively parallel open-source spectral element code.

71 CLASSICAL AND QUANTUM MECHANICS, GENERAL PHYSIC↗

Effective Vectorization with OpenMP 4.5

This paper describes how the Single Instruction Multiple Data (SIMD) model and its extensions in OpenMP work, and how these are implemented in different compilers. Modern processors are highly parallel computational machines which often include multiple processors capable of executing several instructions in parallel. Understanding SIMD and executing instructions in parallel allows the processor to achieve higher performance without increasing the power required to run it. SIMD instructions can significantly reduce the runtime of code by executing a single operation on large groups of data. The SIMD model is so integral to the processor s potential performance that, if SIMD is not utilized, less than half of the processor is ever actually used. Unfortunately, using SIMD instructions is a challenge in higher level languages because most programming languages do not have a way to describe them. Most compilers are capable of vectorizing code by using the SIMD instructions, but there are many code features important for SIMD vectorization that the compiler cannot determine at compile time. OpenMP attempts to solve this by extending the C++/C and Fortran programming languages with compiler directives that express SIMD parallelism. OpenMP is used to pass hints to the compiler about the code to be executed in SIMD. This is a key resource for making optimized code, but it does not change whether or not the code can use SIMD operations. However, in many cases critical functions are limited by a poor understanding of how SIMD instructions are actually implemented, as SIMD can be implemented through vector instructions or simultaneous multi-threading (SMT). We have found that it is often the case that code cannot be vectorized, or is vectorized poorly, because the programmer does not have sufficient knowledge of how SIMD instructions work.

97 MATHEMATICS AND COMPUTING↗