Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “parallel codes”

Search indexed NASA NTRS and DOE OSTI research on propulsion, heat transfer, battery materials and energy systems. Follow report and document links to the original sources.

Quote a phrase for an exact phrase match. Source license links do not imply unrestricted reuse.

At least 721 records · Page 40

Demonstrating Cross-Facility Data Processing at Scale with Laue Microdiffraction

In February and April 2023 live, at-scale data processing demonstrations were conducted between the Advanced Photon Source (APS), a synchrotron light source, and the Argonne Leadership Computing Facility (ALCF). These tests were run as part of a novel beamline technique: coded aperture laue micro-diffraction. This technique requires a significant amount of compute to decode appeture patterns embedded in the detector stream. An autonomous system was able to send data to ALCF during an experiment, utilize 50 nodes of the Polaris supercomputer to process 6-12 hour scans, and return the data back to the APS within 12-15 minutes behind the detector. With scan points arriving every 72 seconds, the system kept up with the beamline, potentially enabling in-experiment analysis. The data processing system utilizes Globus infrastructure and an on-demand queue to dynamically acquire nodes on Polaris. The underlying reconstruction algorithms were parallelized via MPI and accelerated with custom CUDA kernels.

Prince, Michael↗

ZEUS: An Efficient GPU Optimization Method Integrating PSO, BFGS, and Automatic Differentiation

We introduce a novel, efficient computational method, ZEUS, for numerical optimization, and provide an open-source implementation. It has four key ingredients: (1) particle swarm optimization (PSO), (2) the use of the Broyden-Fletcher-Goldfarb-Shanno (BFGS) method, (3) automatic differentiation (AD), and (4) GPUs. Our approach addresses the computational challenges inherent in high-dimensional, non-convex optimization problems. In the first phase of the algorithm, we get a potentially good set of starting points using PSO. Thereafter, we run BFGS independently in parallel from these starting points. BFGS is one of the best-performing algorithms for numerical optimization. However, it requires the gradient of the function being optimized. ZEUS integrates automatic differentiation into BFGS thus avoiding the need for the user to calculate derivatives explicitly. The use of GPUs allows ZEUS to speed up the calculations substantially. We carry out systematic studies to explore the trade-offs between the number of PSO iterations taken, starting points, and BFGS iteration depth. We show that a handful of iterations of PSO can improve global convergence when combined with BFGS. We also present performance studies using common test functions. The source code can be found at https://github.com/fnal-numerics/global-optimizer-gpu.

Soos, Dominik [Old Dominion U.]↗

Extending OpenSHMEM with Aggregation Support for Improved Message Rate Performance

OpenSHMEM is a highly efficient one-sided communication API that implements the PGAS parallel programming model, and is known for its low latency communication operations that can be mapped efficiently to RDMA capabilities of network interconnects. However, applications that use OpenSHMEM can be sensitive to point-to-point message rates, as many-to-many communication patterns can generate large amounts of small messages which tend to overwhelm network hardware that has predominantly been optimised for bandwidth over message rate. Additionally, many important emerging classes of problems such as data analytics are similarly troublesome for the irregular access patterns they employ. Message aggregation strategies have been proven to significantly enhance network performance, but their implementation often involves complex restructuring of user code, making them unwieldy. This paper shows how to combine the best qualities of message aggregation within the communication model of OpenSHMEM such that applications with small and irregular access patterns can improve network performance while maintaining their algorithmic simplicity. We do this by providing a path to a message aggregation framework called conveyors through a minimally intrusive OpenSHMEM extension introducing aggregation contexts that fit more naturally to the OpenSHMEM atomics, gets, and puts model. We test these extensions using four of the bale 3.0 applications which contain essential many-to-many access patterns to show how they can produce performance improvements of up to 65×.

Welch, Aaron↗

Ocpp 2.0.1. Interim Kpi Calculator

The project is split into four pieces. The first is a raw OCPP log parser. The second is a file splitter. The third is a message parser. The final piece is the Interim KPI calculator. The OCPP log parser was created from two different formats of raw OCPP 2.0.1 data. Its intended purpose is to extract device IDs and OCPP event messages from nontabular text logs. The parser looks for specific substrings in the logs to identify which of the two "standards" it should select from. The KPI generator does not perform any of its calculations in parallel. Instead, we opt for a naive batching approach. The splitter takes the file generated from the parser and creates many smaller files for each of the device IDs in the dataset. This allows the pandas queries in the log formatter to be iterate over a significantly smaller slice of data, increasing performance significantly. The message parser step takes messages from each of the files (containing distinct device IDs) and breaks the message out into pieces. The final result is a file with different columns specifying different attributes of the JSON message. The file is an aggregation of all different devices. This is the most complex portion of the code. The KPI calculator takes the parsed messages, as a single file, and calculates the KPI from that data. An excel file is produced with four sheets. These contain the metrics for Session Success, Charge Start Success, Charge End Success, and Charge Start Time. It includes the metrics for the different equations in the Interim KPI Implementation Guide as well as a weighted sum of the different equations for each KPI (excluding Charge End Success and Charge Start Time).

Quinn, Casey↗

3D modeling of deep borehole electromagnetic measurements with energized casing source for fracture mapping at the Utah Frontier Observatory for Research in Geothermal Energy

Here, we present a 3D numerical modelling analysis evaluating the deployment of a borehole electromagnetic measurement tool to detect and image a stimulated zone at the Utah Frontier Observatory for Research in Geothermal Energy geothermal site. As the depth to the geothermal reservoir is several kilometres and the size of the stimulated zone is limited to several 100 m, surface-based controlled-source electromagnetic measurements lack the sensitivity for detecting changes in electrical resistivity caused by the stimulation. To overcome the limitation, the study evaluates the feasibility of using a three-component borehole magnetic receiver system at the Frontier Observatory for Research in Geothermal Energy site. To provide sufficient currents inside and around the enhanced geothermal reservoir, we use an injection well as an energized casing source. To efficiently simulate energizing the injection well in a realistic 3D resistivity model, we introduce a novel modelling workflow that leverages the strengths of both 3D cylindrical-mesh-based electromagnetic modelling code and 3D tetrahedral-mesh-based electromagnetic modelling code. The former is particularly well-suited for modelling hollow cylindrical objects like casings, whereas the latter excels at representing more complex 3D geological structures. In this workflow, our initial step involves computing current densities along a vertical steel-cased well using a 3D cylindrical electromagnetic modelling code. Subsequently, we distribute a series of equivalent current sources along the well's trajectory within a complex 3D resistivity model. We then discretize this model using a tetrahedral mesh and simulate the borehole electromagnetic responses excited by the casing source using a 3D finite-element electromagnetic code. This multi-step approach enables us to simulate 3D casing source electromagnetic responses within a complex 3D resistivity model, without the need for explicit discretization of the well using an excessive number of fine cells. We discuss the applicability and limitations of this proposed workflow within an electromagnetic modelling scenario where an energized well is deviated, such as at the Frontier Observatory for Research in Geothermal Energy site. Using the workflow, we demonstrate that the combined use of the energized casing source and the borehole electromagnetic receiver system offer measurable magnetic field amplitudes and sensitivity to the deep localized stimulated zone. The measurements can also distinguish between parallel-fracture anisotropic reservoirs and isotropic cases, providing valuable insights into the fracture system of the stimulated zone. Besides the magnetic field measurements, vertical electric field measurements in the open well sections are also highly sensitive to the stimulated zone and can be used as additional data for detecting and imaging the target. We can also acquire additional multiple-source data by grounding the surface electrode at various locations and repeating borehole electromagnetic measurements. This approach can increase the number of monitoring data by several factors, providing a more comprehensive dataset for analysing the deep-localized stimulated zone. The numerical analysis indicates that it is feasible to use the combination of the energized casing and downhole electromagnetic measurements in monitoring localized stimulated zone at large depths.

58 GEOSCIENCES↗

OpenACC unified programming environment for GPU and FPGA multi-hybrid acceleration

Attached accelerators have been frequently used in recent High Per- formance Computing (HPC) systems because of their high performance/power ratio. In particular, the Graphics Processing Unit (GPU) is the most popu- lar accelerator owing to its high peak FLOPS performance and high memory bandwidth supported by HBM2, etc. However, the performance of GPU depends highly on a large degree of SIMD parallelism and has difficulty sustaining a high performance on programs with frequent branch operations or a partially low degree of parallelism.By contrast, a Field Programmable Gate Array (FPGA) has received attention as a different type of accelerator than GPU as a fully reconfigurable processor fitting the target applications. The high performance of FPGA is mainly provided by a pipelined operation and optimized circuit suitable for any operation even with frequent conditional branches. We have been focusing on the flexibility of FPGA to compensate for the weakness of GPU. We believe that the coupling of GPU with FPGA can result in one of the most powerful accelerating platforms available.However, the program coding of GPU and FPGA coupling can be quite difficult for application users. Traditionally, CUDA by NVIDIA has been the most popular programming language with the largest share of GPUs used in HPC, whereas a hardware description language such as Verilog HDL has been used in FPGA programming. OpenCL coding has recently become available even on high-end FPGAs. Moreover, several recent studies have also enabled the OpenACC coding for use in FPGA. In this study, we provide a unified programming system based on OpenACC for a platform equipped with both GPU and FPGA aiming at the next-generation accelerated supercomputer framework. Our programming environment is called Multi-Hybrid OpenACC Translator (MHOAT), and in this paper, we describe the basic concept and prototype system of MHOAT based on an evaluation on the amount of coding required and the performance of a hybrid multi-device accelerated system.

Tsunashima, Ryuta↗

TEAL

TEAL is a financial performance calculator plugin for the RAVEN code, framework, resolving around the computation of Net Present Value and associated financial metrics. TEAL can make use of inflation rates, taxation, escalation factors, capital expenditure economy of scale scaling factors. The unique feature of TEAL is the capability to be linked with RAVEN external models and build corresponding cash flows using the variables computed by those external models. In addition to be able to use the capability to generate cash flows derived from complex physical models generated by RAVEN, another distinctive feature of TEAL is the capability to provide financial risk/probabilistic metrics that can empower RAVEN to perform optimization/analysis driven by financial risk augmentations. Optimization, robust optimization, parametric studies, large parallel simulations, sensitivity analysis, data mining, etc. are just some of the capabilities that can be leveraged.

Alfonsi, Andrea↗

UPC++ v1.0 Programmer’s Guide, Revision 2021.9.0

UPC++ is a C++ library that provides Partitioned Global Address Space (PGAS) programming. It is designed for writing parallel programs that run efficiently and scale well on distributed-memory parallel computers. The PGAS model is single program, multiple-data (SPMD), with each separate constituent process having access to local memory as it would in C++. PGAS additionally provides one-sided Remote Memory Access (RMA) to a global address space, which is allocated in shared segments that are distributed over the processes. UPC++ also features Remote Procedure Call (RPC) communication, making it easy to move computation to operate on data that resides on remote processes. In UPC++, all communication operations are explicit, which encourages programmers to be aware of the cost of communication and data movement. Moreover, all communication operations are asynchronous by default, to enable programmers to write code that scales well even on hundreds of thousands of cores.

96 KNOWLEDGE MANAGEMENT AND PRESERVATION↗

SpectrumSDT: A program for parallel calculation of coupled rotational-vibrational energies and lifetimes of bound states and scattering resonances in triatomic systems

In this work, we present SpectrumSDT – a program for calculations of energies and lifetimes of bound rotational-vibrational states below and scattering resonances above the dissociation threshold on a global potential energy surface of a triatomic system, which may include stable molecules, weekly-bound van-der-Waals complexes, and unbound atom + diatom scattering systems. Large-amplitude vibrational motion is treated explicitly using hyper-spherical coordinates. Three options for the rotational-vibrational interaction are supported: uncoupled (symmetric top rotor), partially coupled (to include interaction between several nearest states only) and full-coupled (vibrating asymmetric-top rotor). In addition to energies and lifetimes, SpectrumSDT is able to integrate ro-vibrational wave functions over the user-defined regions of potential energy surface, which helps to classify these states. In this release of the code, SpectrumSDT is limited to ABA-type molecules with wave functions that do not extend into the regions near Eckart singularities.

37 INORGANIC, ORGANIC, PHYSICAL, AND ANALYTICAL CH↗

An updated LLVM-based quantum research compiler with further OpenQASM support

Abstract Quantum computing is a rapidly growing field with the potential to change how we solve previously intractable problems. Emerging hardware is approaching a complexity that requires increasingly sophisticated programming and control. Scaffold is an older quantum programming language that was originally designed for resource estimation for far-future, large quantum machines, and ScaffCC is the corresponding LLVM-based compiler. For the first time, we provide a full and complete overview of the language itself, the compiler as well as its pass structure. While previous works Abhari et al (2015 Parallel Comput. 45 2–17), Abhari et al (2012 Scaffold: quantum programming language https://cs.princeton.edu/research/techreps/TR-934-12 ), have piecemeal descriptions of different portions of this toolchain, we provide a more full and complete description in this paper. We also introduce updates to ScaffCC including conditional measurement and multidimensional qubit arrays designed to keep in step with modern quantum assembly languages, as well as an alternate toolchain targeted at maintaining correctness and low resource count for noisy-intermediate scale quantum (NISQ) machines, and compatibility with current versions of LLVM and Clang. Our goal is to provide the research community with a functional LLVM framework for quantum program analysis, optimization, and generation of executable code.

71 CLASSICAL AND QUANTUM MECHANICS, GENERAL PHYSIC↗

PUMIPic: A mesh-based approach to unstructured mesh Particle-In-Cell on GPUs

Unstructured mesh particle-in-cell, PIC, simulations executing on the current and next generation of massively parallel systems require new methods for both the mesh and particles to achieve performance and scalability on GPUs. The traditional approach to implementing PIC simulations defines data structures and algorithms in terms of particles with a full copy of the unstructured mesh on every process. To effectively scale the unstructured mesh and particles, mesh-based PIC uses the unstructured mesh as the predominant data structure with the particles stored in terms of the mesh entities. Here, this paper details the PUMIPic library, a framework for developing efficient and performance-portable mesh-based PIC simulations on GPU systems. A pseudo physics simulation based on a five-dimensional gyro-kinetic code for modeling plasma physics is used to examine the performance of PUMIPic. Scaling studies of the unstructured mesh partition and number of particles are performed up to 4096 nodes of the Summit system at Oak Ridge National Laboratory. The studies show that mesh-based PIC can utilize a partitioned mesh and maintain scaling up to system limitations.

97 MATHEMATICS AND COMPUTING↗

A flexible gyro-fluid system of equations

Gyro-fluid equations are velocity space moments of the gyrokinetic equations. Special gyro-Landau-fluid closures have been developed that include the damping due to kinetic resonances by fitting to the collisionless local plasma response functions. This damping allows for accurate linear eigenmodes to be computed with a relatively low number of velocity space moments compared to the number of velocity quadrature points in gyrokinetic codes. However, none of the published gyro-Landau-fluid closure schemes considers the Onsager symmetries of the resulting quasi-linear fluxes as a constraint. Onsager symmetry guarantees that the matrix of diffusivities is positive definite, an important property for the numerical stability of a transport solver. A two-parameter real closure for improving the accuracy of low-resolution gyro-fluid equations, which preserves the Onsager symmetry and allows higher velocity space moments, is presented in this paper. The new linear gyro-fluid system (GFS) is used to extend the TGLF quasi-linear transport model so that it can compute the energy and momentum fluxes due to parallel magnetic fluctuations, completing the transport matrix. The GFS equations do not use a bounce average approximation. The GFS equations are fully electromagnetic with general flux surface magnetic geometry, pitch angle scattering for electron collisions, and subsonic equilibrium toroidal rotation. Using GFS eigenmodes in the quasi-linear TGLF model will be shown to yield a more accurate match to fluxes computed by CGYRO turbulence simulations. In conclusion, prospects for future applications of a quasi-linear theory to new plasma transport regimes and magnetic confinement devices in addition to tokamaks are opened by the flexibility of the GFS eigensolver.

70 PLASMA PHYSICS AND FUSION TECHNOLOGY↗

ECP ST Capability Assessment Report (CAR) for VTK-m (FY20)

The ECP/VTK-m project is providing the core capabilities to perform scientific visualization on Exascale architectures. The ECP/VTK-m project fills the critical feature gap of performing visualization and analysis on processors like graphics-based processors. The results of this project will be delivered in tools like ParaView, Vislt, and Ascent as well as in stand-alone form. Moreover, these projects are depending on this ECP effort to be able to make effective use of ECP architectures. One of the biggest recent changes in high-performance computing is the increasing use of accelerators. Accelerators contain processing cores that independently are inferior to a core in a typical CPU, but these cores are replicated and grouped such that their aggregate execution provides a very high computation rate at a much lower power. Current and future CPU processors also require much more explicit parallelism. Each successive version of the hardware packs more cores into each processor, and technologies like hyper threading and vector operations require even more parallel processing to leverage each core's full potential. VTK-m is a toolkit of scientific visualization algorithms for emerging processor architectures. VTK-m supports the fine-grained concurrency for data analysis and visualization algorithms required to drive extreme scale computing by providing abstract models for data and execution that can be applied to a variety of algorithms across many different processor architectures. The ECP/VTK-m project is building up the VTK-m codebase with the necessary visualization algorithm implementations that run across the varied hardware platforms to be leveraged at the Exascale. We will be working with other ECP projects, such as ALPINE, to integrate the new VTK-m code into production software to enable visualization on our HPC systems.

97 MATHEMATICS AND COMPUTING↗

Idiomatic Correctness-Checking via Julienne in Fortran 2023

This paper presents a unified approach to unit testing and runtime assertion checking using Fortran 2023. The paper describes the support for our approach in the Julienne framework. Julienne leverages recent Fortran standards to implement object-oriented design patterns, support testing parallel programs, and implement functional programming patterns in order to craft idioms inspired by natural-language expressions. The presented idioms employ novel operators to write expressions that evaluate to a test-diagnosis object encapsulating two components: (1) the test outcome or assertion outcome and (2) an automatically generated diagnostic string. Two other novel aspects of the approach include (1) the ability to enforce assertions inside pure procedures and (2) the ability to output rich diagnostic information inside pure procedures during error termination when assertions fail. The latter capability mitigates against a reason that Fortran programmers commonly cite for not writing pure procedures: difficulty obtaining useful program output inside pure procedures when debugging code. This paper demonstrates how the adoption of the proposed idioms leads naturally to a unifying theme across two otherwise disparate technologies: unit testing and runtime assertion checking. Finally, this paper describes the usage of the Julienne testing framework for writing unit tests and assertions in the Matcha high-performance computing application and the Fiats deep learning library.

Rouson, Damian↗

Fokker-Planck simulations of fast ion ICRF and electron EC heating in a mirror plasma using CQL3D-m

The CQL3D-m continuum bounce-average Fokker-Planck code is adapted for magnetic mirror plasmas [1] and is now routinely used in no-free-parameter classical integrated modeling of mirror devices [2, 3]. In the present effort, we report on two RF methods of plasma heating in mirror machine. The fast ions (FI) are heated by Fast waves at 2nd-4th harmonic, where FIs originate from neutral beam injection at 45 degrees to the magnetic field. The scenario shows an efficient ion heating near the FI bouncing point. The electrons are heated by X-mode launched from the high magnetic field side towards the resonance. Different from the tokamak applications, CQL3D-m provides an evolving self-consistent ambipolar parallel electric field, which determines the shape of the loss cone and hence an accurate confinement time of both ions and electrons. Also, it includes a description of ion and electron sources and sinks (related to charge exchange and impact ionization) which are updated at every time step. CQL3D-m utilizes a fully nonlinear Coulomb collision operator that is important for the significantly non-Maxwellian ion distributions typically established in mirror plasmas.

70 PLASMA PHYSICS AND FUSION TECHNOLOGY↗

Examination of stiff ion temperature gradient mode physics in simulations of DIII-D H-mode transport

A systematic evaluation of gyrokinetic and gyrofluid model predictions of ion temperature gradient (ITG) stability and transport using parameters from DIII-D high confinement mode (H-mode) plasmas has been performed. The nonlinear CGYRO code is used to make the gyrokinetic predictions, and the quasilinear TGLF model for the corresponding gyrofluid predictions. The assessments are made at three radii (normalized toroidal flux ρtor = 0.4, 0.55, and 0.7) in three different plasma scenarios with varying levels of neutral beam heating and torque. For each of the nine cases (3 radii × 3 scenarios) considered, ITG turbulence is found to be the dominant long-wavelength instability and transport mechanism. The inclusions of both transverse magnetic fluctuations and dynamic fast beam ions are stabilizing for all cases considered, with strongest effects seen at ρor = 0.4 where the fast ion population and normalized plasma pressure β = 2μ0nT/B2 are highest. The further inclusion of parallel magnetic fluctuations does not have a meaningful impact on the ITG turbulence in these scenarios, but does destabilize (in combination with fast ions) new high-frequency instabilities at ρtor = 0.4 in the high power scenarios. In each case the linear and nonlinear ITG critical gradients are predicted to be lower than the measured ITG scale lengths and their associated uncertainties. Inclusion of equilibrium flow shear in the transport predictions generally leads to an upshift in effective critical gradient rather than a qualitative change in the predicted stiffness, with stronger responses typically seen in the gyrokinetic predictions than in the gyrofluid results. However, in most cases these upshifted gradients still remain below the measured values and their uncertainties. Although the predicted critical gradients are below the measured gradients, both models predicted flux-matching gradients consistent with measured values in six of the nine cases considered, with no clear systematic over- or underprediction. Thus, while the experimental ion temperature profiles do not appear to be closely pinned to the ITG critical gradient, both gyrokinetic and gyrofluid models are able to accurately match the measured gradients reasonably well in most cases.

70 PLASMA PHYSICS AND FUSION TECHNOLOGY↗

Domain decomposition in the GPU-accelerated Shift Monte Carlo code

The GPU solver within the Shift continuous-energy Monte Carlo neutron transport code has been extended to provide domain decomposition in addition to domain replication to enable the solution of problems with memory requirements exceeding the capacity of a single GPU. The strategy follows the Multiple Set, Overlapping Domain (MSOD) approach that is used in Shift’s CPU solver and integrates into the event-based algorithm used for Shift’s GPU solver. Furthermore, the ability to assign processors to spatial domains non-uniformly has been maintained. In this work, two different approaches for communicating particle data between domains are considered, and multiple criteria for load balancing problems have been investigated. Numerical results are presented for both fresh and depleted small modular nuclear reactor (SMR) cores. A parallel efficiency of approximately 80% was achieved with up to 16 spatial domains measured relative to full domain replication. A scaling study on the Summit supercomputer demonstrates a weak scaling parallel efficiency of over 90% on over 24000 GPUs.

97 MATHEMATICS AND COMPUTING↗

Design and physics basis for the upcoming DIII-D SAS-VW campaign to quantify tungsten leakage and transport in a new slot divertor geometry

A set of experiments are planned to exploit the high SOL collisionality enabled by a tightly baffled slot divertor geometry to suppress tungsten leakage in DIII-D. A toroidal row of graphite tiles from the Small Angle Slot (SAS) divertor is being coated with 10–15 μ m of tungsten. New spectroscopic viewing chords with in-vacuo optics will measure the W gross erosion source from the divertor surface with high spatial and temporal resolution. In parallel, the bottom of the SAS divertor is changed from a flat to a ‘V’ shape. New SOLPS-ITER/DIVIMP simulations conducted with drifts using the planned ‘V’ shape predict a substantial reduction in W sourcing and SOL accumulation in either B × ∇B direction relative to either the old SAS divertor shape or the open, lower divertor. Dedicated studies are planned to carefully characterize the level of W sourcing, leakage, and scrape-off-layer (SOL) accumulation in DIII-D over a wide range of plasma scenarios. Various actuators will be assessed for their efficacy in further reducing high-Z impurity sources and leakage from the slot divertor geometry. Finally, this coupled code-experiment validation effort will be used to stress-test physics models and build confidence in extrapolations to advanced, high-Z divertor geometries for next-step devices.

70 PLASMA PHYSICS AND FUSION TECHNOLOGY↗