Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “parallel”

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 19 records

Long-time molecular dynamics simulations on massively parallel platforms: A comparison of parallel replica dynamics and parallel trajectory splicing

Molecular dynamics (MD) is one of the most widely used techniques in computational materials science. By providing fully resolved trajectories, it allows for a natural description of static, thermodynamic, and kinetic properties. A major hurdle that has hampered the use of MD is the fact that the timescales that can be directly simulated are very limited, even when using massively parallel computers. We compare two time-parallelization approaches, parallel replica dynamics (ParRep) and parallel trajectory splicing (ParSplice), that were specifically designed to address this issue for rare event systems by leveraging parallel computing resources. Using simulations of the relaxation of small disordered platinum nanoparticles, a comparative performance analysis of the two methods is presented. Finally, the results show that ParSplice can significantly outperform ParRep in the common case where the trajectory remains trapped for a long time within a region of configuration space but makes rapid structural transitions within this region.

36 MATERIALS SCIENCE↗

Parallel Reconstruction of Three Dimensional Magnetohydrodynamic Equilibria in Plasma Confinement Devices

Fast, accurate three dimensional reconstructions of plasma equilibria, crucial for physics interpretation of fusion data generated within confinement devices like stellarators/ tokamaks, are computationally very expensive and routinely require days, even weeks, to complete using serial approaches. Here, we present a parallel implementation of the three dimensional plasma reconstruction code, V3FIT. A formal analysis to identify the performance bottlenecks and scalability limits of this new parallel implementation, which combines both task and data parallelism, is presented. The theoretical findings are supported by empirical performance results on several thousands of processor cores of a Cray XC30 supercomputer. Parallel V3FIT is shown to deliver over 40X speedup, enabling fusion scientists to carry out three dimensional plasma equilibrium reconstructions at unprecedented scales in only a few hours (instead of in days/weeks) for the first time.

70 PLASMA PHYSICS AND FUSION TECHNOLOGY↗

PANDORA: A Parallel Dendrogram Construction Algorithm for Single Linkage Clustering on GPU

This paper introduces Pandora, a parallel algorithm for computing dendrograms, the hierarchical cluster trees for single linkage clustering (SLC). Current parallel approaches construct dendrograms by partitioning a minimum spanning tree and removing edges. However, they struggle with skewed, hard-to-parallelize real-world dendrograms. Consequently, computing dendrograms is the sequential bottleneck in HDBSCAN*[21], a popular SLC variant. Pandora uses recursive tree contraction to address this limitation. Pandora contracts nodes to construct progressively smaller trees. It computes the smallest contracted dendrogram and expands it by inserting contracted edges. This recursive strategy is highly parallel, skew-independent, work-optimal, and well-suited for GPUs and multicores. We develop a performance portable implementation of Pandora in Kokkos[31] and evaluate its performance on multicore CPUs and multi-vendor GPUs (e.g., Nvidia, AMD) for dendrogram construction in HDBSCAN*. Multithreaded Pandora is 2.2x faster than the current best-multithreaded implementation. Our GPU version achieves 6-20x speedup on AMD GPUs and 10-37x on NVIDIA GPUs over multithreaded Pandora. Pandora removes HDBSCAN*’s sequential bottleneck, greatly boosting efficiency, particularly with GPUs.

Sao, Piyush↗

Extracting SIMD Parallelism from Recursive Task-Parallel Programs

The pursuit of computational efficiency has led to the proliferation of throughput-oriented hardware, from GPUs to increasingly wide vector units on commodity processors and accelerators. This hardware is designed to efficiently execute data-parallel computations in a vectorized manner. However, many algorithms are more naturally expressed as divide-and-conquer, recursive, task-parallel computations. In the absence of data parallelism, it seems that such algorithms are not well suited to throughput-oriented architectures. This paper presents a set of novel code transformations that expose the data parallelism latent in recursive, task- parallel programs. These transformations facilitate straightforward vectorization of task-parallel programs on commodity hardware. We also present scheduling policies that maintain high utilization of vector resources while limiting space usage. Across several task-parallel benchmarks, we demonstrate both efficient vector resource utilization and substantial speedup on chips using Intel’s SSE4.2 vector units, as well as accelerators using Intel’s AVX512 units. We then show through rigorous sampling that, in practice, our vectorization techniques are effective for a much larger class of programs.

Recursive Programs, task parallelism, vectorizatio↗

Basker: Parallel sparse LU factorization utilizing hierarchical parallelism and data layouts

Transient simulation in circuit simulation tools, such as SPICE and Xyce, depend on scalable and robust sparse LU factorizations for efficient numerical simulation of circuits and power grids. As the need for simulations of very large circuits grow, the prevalence of multicore architectures enable us to use shared memory parallel algorithms for such simulations. A parallel factorization is a critical component of such shared memory parallel simulations. We develop a parallel sparse factorization algorithm that can solve problems from circuit simulations efficiently, and map well to architectural features. This new factorization algorithm exposes hierarchical parallelism to accommodate irregular structure that arise in our target problems. It also uses a hierarchical two-dimensional data layout which reduces synchronization costs and maps to memory hierarchy found in multicore processors. We present an OpenMP based implementation of the parallel algorithm in a new multithreaded solver called Basker in the Trilinos framework. Here, we present performance evaluations of Basker on the Intel SandyBridge and Xeon Phi platforms using circuit and power grid matrices taken from the University of Florida sparse matrix collection and from Xyce circuit simulation. Basker achieves a geometric mean speedup of 5.91× on CPU (16 cores) and 7.4× on Xeon Phi (32 cores) relative to state-of-the-art solver KLU. Basker outperforms Intel MKL Pardiso solver (PMKL) by as much as 30× on CPU (16 cores) and 7.5× on Xeon Phi (32 cores) for low fill-in circuit matrices. Furthermore, Basker provides 5.4× speedup on a challenging matrix sequence taken from an actual Xyce simulation.

97 MATHEMATICS AND COMPUTING↗

Parallel PIPS-SBB: multi-level parallelism for stochastic mixed-integer programs

PIPS-SBB is a distributed-memory parallel solver with a scalable data distribution paradigm. It is designed to solve MIPs with a dual-block angular structure, which is characteristic of deterministic-equivalent Stochastic Mixed-Integer Programs (SMIPs). In this paper, we present two different parallelizations of Branch & Bound (B&B), implementing both as extensions of PIPS-SBB, thus adding an additional layer of parallelism. In the first of the proposed frameworks, PIPS-PSBB, the coordination and load-balancing of the different optimization workers is done in a decentralized fashion. This new framework is designed to ensure all available cores are processing the most promising parts of the B&B tree. The second, ug[PIPS-SBB,MPI], is a parallel implementation using the Ubiquity Generator (UG), a universal framework for parallelizing B&B tree search that has been sucessfully applied to other MIP solvers. We show the effects of leveraging multiple levels of parallelism in potentially improving scaling performance beyond thousands of cores.

97 MATHEMATICS AND COMPUTING↗

PLATO (Parallel Load Assignment Tool): A Parallel Workload Partitioner for Particle-based Methods

A key first step in many large-scale high-performance scientific computing applications is the distribution of the computational domain across all participating processors of a parallel computing platform such as a shared memory machine, cluster or a tightly-coupled supercomputer. The primary goal of such a partitioning step is to ensure that the computational work performed by each process remains load-balanced throughout the execution of the parallel application. In this project, a general-purpose parallel partitioning tool, code-named PLATO, was designed and implemented. PLATO assumes that the workload is a set of points in an n-dimensional metric space. These points are abstractions of computational units that may represent point-like computational units such as celestial objects in astrophysics, atoms in materials sciences and molecules in biology/chemistry, or may represent more abstract computational units such as grid points in finite difference methods, grid elements in finite element methods or n-dimensional points in the feature space of a host of other applications. PLATO supports several key and useful capabilities, namely: (a) multiple load partitioning strategies, (b) support for arbitrary user-defined processor topology, (c) pre-fetching data from neighboring processors based on user-defined parameters, and (d) support for arbitrary number and types of attributes associated with each point in the computational domain. PLATO is implemented in the C programming language using Message Passing Interface (MPI) for inter-processor communications and its parallel performance tested on up to 48 processors of a shared memory machine. This report includes a detailed performance study of PLATO using parallel speedup and iso-efficiency as the two main metrics of parallel performance. In addition, a user manual and DOXYGEN generated code documentation have been included for completeness.

97 MATHEMATICS AND COMPUTING↗

A Massively Parallel Implementation of the CCSD(T) Method Using the Resolution-of-the-Identity Approximation and a Hybrid Distributed/Shared Memory Parallelization Model

In this work, a parallel algorithm is described for the coupled-cluster singles and doubles method augmented with a perturbative correction for triple excitations [CCSD(T)] using the resolution-of-the-identity (RI) approximation for two-electron repulsion integrals (ERIs). The algorithm bypasses the storage of four-center ERIs by adopting an integral-direct strategy. The CCSD amplitude equations are given in a compact quasi-linear form by factorizing them in terms of amplitude-dressed three-center intermediates. A hybrid MPI/OpenMP parallelization scheme is employed, which uses the OpenMP-based shared memory model for intranode parallelization and the MPI-based distributed memory model for internode parallelization. Parallel efficiency has been optimized for all terms in the CCSD amplitude equations. Two different algorithms have been implemented for the rate-limiting terms in the CCSD amplitude equations that entail and -scaling computational costs, where N O and N V denote the number of correlated occupied and virtual orbitals, respectively. One of the algorithms assembles the four-center ERIs requiring N V 4 and N O 2 N V 2 -scaling memory costs in a distributed manner on a number of MPI ranks, while the other algorithm completely bypasses the assembling of quartic memory-scaling ERIs and thus largely reduces the memory demand. It is demonstrated that the former memory-expensive algorithm is faster on a few hundred cores, while the latter memory-economic algorithm shows a better strong scaling in the limit of a few thousand cores. The program is shown to exhibit a near-linear scaling, in particular for the compute-intensive triples correction step, on up to 8000 cores. The performance of the program is demonstrated via calculations involving molecules with 24–51 atoms and up to 1624 atomic basis functions. As the first application, the complete basis set (CBS) limit for the interaction energy of the π-stacked uracil dimer from the S66 data set has been investigated. This work reports the first calculation of the interaction energy at the CCSD(T)/aug-cc-pVQZ level without local orbital approximation. The CBS limit for the CCSD correlation contribution to the interaction energy was found to be -8.01 kcal/mol, which agrees very well with the value -7.99 kcal/mol reported by Schmitz, Hättig, and Tew [ Phys. Chem. Chem. Phys. 2014 , 16 , 22167-22178]. The CBS limit for the total interaction energy was estimated to be -9.64 kcal/mol.

37 INORGANIC, ORGANIC, PHYSICAL, AND ANALYTICAL CH↗

Parallel programming of an ionic floating-gate memory array for scalable neuromorphic computing

Neuromorphic computers could overcome efficiency bottlenecks inherent to conventional computing through parallel programming and readout of artificial neural network weights in a crossbar memory array. However, selective and linear weight updates and <10-nanoampere read currents are required for learning that surpasses conventional computing efficiency. We introduce an ionic floating-gate memory array based on a polymer redox transistor connected to a conductive-bridge memory (CBM). Selective and linear programming of a redox transistor array is executed in parallel by overcoming the bridging threshold voltage of the CBMs. Synaptic weight readout with currents <10 nanoamperes is achieved by diluting the conductive polymer with an insulator to decrease the conductance. The redox transistors endure >1 billion write-read operations and support >1-megahertz write-read frequencies.

bio-inspired, energy storage (including batteries ↗

Dynamic Load Balancing Based on Constrained K-D Tree Decomposition for Parallel Particle Tracing

Particle tracing is a fundamental technique in flow field data visualization. In this work, we present a novel dynamic load balancing method for parallel particle tracing. Specifically, we employ a constrained k-d tree decomposition approach to dynamically redistribute tasks among processes. Each process is initially assigned a regularly partitioned block along with duplicated ghost layer under the memory limit. During particle tracing, the k-d tree decomposition is dynamically performed by constraining the cutting planes in the overlap range of duplicated data. This ensures that each process is reassigned particles as even as possible, and on the other hand the new assigned particles for a process always locate in its block. Result shows good load balance and high efficiency of our method.

Zhang, Jiang↗

Fast synchronization-free algorithms for parallel sparse triangular solves with multiple right-hand sides

The sparse triangular solve kernels, SpTRSV and SpTRSM, are important building blocks for a number of numerical linear algebra routines. Parallelizing SpTRSV and SpTRSM on today's many-core platforms, such as GPUs, is not an easy task since computing a component of the solution may depend on previously computed components, enforcing a degree of sequential processing. As a consequence, most existing work introduces a preprocessing stage to partition the components into a group of level-sets or colour-sets so that components within a set are independent and can be processed simultaneously during the subsequent solution stage. However, this class of methods requires a long preprocessing time as well as significant runtime synchronization over-heads between the sets. To address this, we

HPC↗

Nonparallel transcriptional divergence during parallel adaptation

Abstract How underlying mechanisms bias evolution toward predictable outcomes remains an area of active debate. In this study, we leveraged phenotypic plasticity and parallel adaptation across independent lineages of Trinidadian guppies ( Poecilia reticulata ) to assess the predictability of gene expression evolution during parallel adaptation. Trinidadian guppies have repeatedly and independently adapted to high‐ and low‐predation environments in the wild. We combined this natural experiment with a laboratory breeding design to attribute transcriptional variation to the genetic influences of population of origin and developmental plasticity in response to rearing with or without predators. We observed substantial gene expression plasticity, as well as the evolution of expression plasticity itself, across populations. Genes exhibiting expression plasticity within populations were more likely to also differ in expression between populations, with the direction of population differences more likely to be opposite those of plasticity. While we found more overlap than expected by chance in genes differentially expressed between high‐ and low‐predation populations from distinct evolutionary lineages, the majority of differentially expressed genes were not shared between lineages. Our data suggest alternative transcriptional configurations associated with shared phenotypes, highlighting a role for transcriptional flexibility in the parallel phenotypic evolution of a species known for rapid adaptation.

Fischer, Eva K.↗

Parallelized Screening of Characterized and DFT-Modeled Bimetallic Colloidal Cocatalysts for Photocatalytic Hydrogen Evolution

Using a newly designed and developed parallelized photoreactor and colorimetric detection method, a large sampling of bimetallic co-catalysts (Pd/Sn, Pd/Mo, Pd/Ru, Pd/Pb, Pd/Ni, Ni/Sn, Mo/Sn and Pt/Sn) for photocatalytic water reduction have been tested in this work. Of these co-catalysts, the combination of palladium and tin showed the highest synergistic behavior and peak hydrogen gas production at a low relative fraction of palladium. The resulting Pd/Sn bimetallic co-catalysts were characterized using high-angle annular dark-field (HAADF) and scanning transmission electron microscopy energy dispersive X-ray spectroscopy (STEM-EDS), and specifically, investigation of the palladium/tin mixture indicated that palladium and tin elements reside within the same particle. The experimental catalytic activity for the palladium/tin mixture was compared to density functional theory-derived energy values associated with the adsorption of hydrogen onto a surface. This comparison demonstrated that the typical peak found in electrochemical Sabatier volcano plots at ΔG H* = ~0 eV was replicated in the experimental photocatalytic system with a peak activity observed at ΔG H* = -0.036 eV. Computational confirmation of the results expressed here demonstrates the efficacy of colorimetric detection of hydrogen in parallel and presents a model for increasingly rapid catalyst screening.

08 HYDROGEN↗

Parallel magnetic field suppresses dissipation in superconducting nanostrips

The motion of Abrikosov vortices in type-II superconductors results in a finite resistance in the presence of an applied electric current. Elimination or reduction of the resistance via immobilization of vortices is the "holy grail" of superconductivity research. Common wisdom dictates that an increase in the magnetic field escalates the loss of energy since the number of vortices increases. Here we show that this is no longer true if the magnetic field and the current are applied parallel to each other. Our experimental studies on the resistive behavior of a superconducting Mo0.79Ge0.21 nanostrip reveal the emergence of a dissipative state with increasing magnetic field, followed by a pronounced resistance drop, signifying a reentrance to the superconducting state. Large-scale simulations of the 3D time-dependent Ginzburg-Landau model indicate that the intermediate resistive state is due to an unwinding of twisted vortices. When the magnetic field increases, this instability is suppressed due to a better accommodation of the vortex lattice to the pinning configuration. Our findings show that magnetic field and geometrical confinement can suppress the dissipation induced by vortex motion and thus radically improve the performance of superconducting materials.

75 CONDENSED MATTER PHYSICS, SUPERCONDUCTIVITY AND↗

Parallel beamlet dose calculation via beamlet contexts in a distributed multi‐GPU framework

Purpose Dose calculation is one of the most computationally intensive, yet essential tasks in the treatment planning process. With the recent interest in automatic beam orientation and arc trajectory optimization techniques, there is a great need for more efficient model‐based dose calculation algorithms that can accommodate hundreds to thousands of beam candidates at once. Foundational work has shown the translation of dose calculation algorithms to graphical processing units ( GPU s), lending to remarkable gains in processing efficiency. But these methods provide parallelization of dose for only a single beamlet, serializing the calculation of multiple beamlets and under‐utilizing the potential of modern GPU s. In this paper, the authors propose a framework enabling parallel computation of many beamlet doses using a novel beamlet context transformation and further embed this approach in a scalable network of multi‐ GPU computational nodes. Methods The proposed context‐based transformation separates beamlet‐local density and TERMA into distinct beamlet contexts that independently provide sufficient data for beamlet dose calculation. Beamlet contexts are arranged in a composite context array with dosimetric isolation, and the context array is subjected to a GPU collapsed‐cone convolution superposition procedure, producing the set of beamlet‐specific dose distributions in a single pass. Dose from each context is converted to a sparse representation for efficient storage and retrieval during treatment plan optimization. The context radius is a new parameter permitting flexibility between the speed and fidelity of the dose calculation process. A distributed manager‐worker architecture is constructed around the context‐based GPU dose calculation approach supporting an arbitrary number of worker nodes and resident GPU s. Phantom experiments were executed to verify the accuracy of the context‐based approach compared to Monte Carlo and a reference CPU ‐ CCCS implementation for single beamlets and broad beams composed by addition of beamlets. Dose for representative 4 π beam sets was calculated in lung and prostate cases to compare its efficiency with that of an existing beamlet‐sequential GPU ‐ CCCS implementation. Code profiling was also performed to evaluate the scalability of the framework across many networked GPU s. Results The dosimetric accuracy of the context‐based method displays <1.35% and 2.35% average error from the existing serialized CPU ‐ CCCS algorithm and Monte Carlo simulation for beamlet‐specific PDD s in water and slab phantoms, respectively. The context‐based method demonstrates substantial speedup of up to two orders of magnitude over the beamlet‐sequential GPU ‐ CCCS method in the tested configurations. The context‐based framework demonstrates near linear scaling in the number of distributed compute nodes and GPU s employed, indicating that it is flexible enough to meet the performance requirements of most users by simply increasing the hardware utilization. Conclusions The context‐based approach demonstrates a new expectation of performance for beamlet‐based dose calculation methods. This approach has been successful in accelerating the dose calculation process for very large‐scale treatment planning problems ‐ such as automatic 4 π IMRT beam orientation and VMAT arc trajectory selection, with hundreds of thousands of beamlets ‐ in clinically feasible timeframes. The flexibility of this framework makes it as a strong candidate for use in a variety of other very large‐scale treatment planning tasks and clinical workflows.

Neph, Ryan↗

Modelling of parallel dynamics of a pellet-produced plasmoid

The parallel expansion of a dense, pellet-produced plasmoid is modelled with parameters relevant to pellet fuelling experiments in the Wendelstein7-X stellarator. Good agreement is found between the analytical theory and more detailed modelling. In particular, much of the energy deposited in the pellet by the ambient plasma is transferred to the pellet ions by the ambipolar electric field during the expansion. The validity of the hydrodynamic treatment of the plasmoid and the ambient plasma is discussed.

Physics↗

Automatic and Transparent Resource Contention Mitigation for Improving Large-Scale Parallel File System Performance

Proportional to the scale increases in HPC systems, many scientific applications are becoming increasingly data intensive, and parallel I/O has become one of the dominant factors impacting the large-scale HPC application performance. On a typical large-scale HPC system, we have observed that the lack of a global workload coordination coupled with the shared nature of storage systems cause load imbalance and resource contention over the end-to-end I/O paths resulting in severe performance degradation. I/O load imbalance on HPC systems is generally a self-inflicted wound and mostly occurs between the I/O paths and resources consumed by each individual job. In this paper, we introduce TAPP-IO, a dynamic, shared load balancing framework for mitigating resource contention. TAPP-IO extends our previous work and solves two major limitations: First, it transparently intercepts file creation calls during runtime to balance the workload over all available storage targets. The usage of TAPP-IO requires no application source code modifications and is independent from any I/O middleware. The framework can be applied to almost any HPC platform and is suitable for systems that lack a centralized file system resource manager. Second, the framework proposes a new placement strategy to support not only file-per-process I/O, but also single shared file I/O. This opens the door to a new class of scientific applications that can leverage the placement library for improved performance. We demonstrate the effectiveness of our integration on the Titan system at the Oak Ridge National Laboratory. Our experiments with a synthetic benchmark and real-world HPC workload show that, even in a noisy production environment, TAPP-IO can improve large-scale application performance significantly.

Neuwirth, Sarah↗