Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “Graphics processing units”

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 577 records · Page 32

Considerations on the Use of Custom Accelerators for Big Data Analytics

Accelerators, including Graphic Processing Units (GPUs) for gen- eral purpose computation, many-core designs with wide vector units (e.g., Intel Phi), have become a common component of many high performance clusters. The appearance of more stable and reliable tools tools that can automatically convert code written in high-level specifications with annotations (such as C or C++) to hardware de- scription languages (High-Level Synthesis - HLS), is also setting the stage for a broader use of reconfigurable devices (e.g., Field Pro- grammable Gate Arrays - FPGAs) in high performance system for the implementation of custom accelerators, helped by the fact that new processors include advanced cache-coherent interconnects for these components. In this chapter, we briefly survey the status of the use of accelerators in high performance systems targeted at big data analytics applications. We argue that, although the progress in the use of accelerators for this class of applications has been sig- nificant, differently from scientific simulations there still are gaps to close. This is particularly true for the ”irregular” behaviors exhibited by no-SQL, graph databases. We focus our attention on the limits of HLS tools for data analytics and graph methods, and discuss a new architectural template that better fits the requirement of this class of applications. We validate the new architectural templates by mod- ifying the Graph Engine for Multithreaded System (GEMS) frame- work to support accelerators generated with such a methodology, and testing with queries coming from the Lehigh University Benchmark (LUBM). The architectural template enables better supporting the task and memory level parallelism present in graph methods by sup- porting a new control model and a enhanced memory interface. We show that out solution allows generating parallel accelerators, pro- viding speed ups with respect to conventional HLS flows. We finally draw conclusions and present a perspective on the use of reconfig- urable devices and Design Automation tools for data analytics.

Data Analytics↗

Neutrino Oscillations in Supernovae

A (core-collapse) supernova is the final death call of a massive star during which a gigantic amount of a special kind of elementary particles known as neutrinos are released for a brief period of time. An earlier work by the PI and his collaborators has shown that the dense neutrino gas deep inside the supernova can experience "flavor transformation" or "oscillations" in a collective fashion, a macroscopic quantum phenomenon spanning over distances of 100-1000 kilometers. During this process neutrinos of different energies and propagation directions change their identities simultaneously. This phenomenon may be a key to understanding the mechanism of supernova explosion and the origin of many of the chemical elements found on the earth which were produced in the supernovae exploded in the past. The previous understanding of neutrino oscillations in supernovae was based on a stationary 3-dimensional model with 1 spatial dimension and 2 momentum dimensions. In this "neutrino bulb model" neutrinos are emitted from a spherically symmetric surface and they are decoupled from the motion of matter and the production of chemical elements. In order to accurately model the neutrino oscillations in supernovae and determine its physical consequences, sophisticated 7-dimensional (1 temporal dimension + 3 spatial dimensions + 3 momentum dimensions) modelling of neutrino transport must be performed self-consistently together with the hydrodynamic simulation of the flow of energy and matter inside the supernova and with the calculation of the production and destruction of chemical elements through a large nucleosynthesis network. Although it will be long journey to achieve the lofty goal, our project has made important progress in three different fronts towards this goal. In the first front we explored new computing hardware on which the next generation simulation codes may be run. We ported the neutrino bulb code to the platform of Graphics Processing Unit (GPU) and then later developed a new bulb code that can be run on supercomputers equipped with the Intel Xeon CPUs and/or the Xeon Phi coprocessors. In the second front we developed new algorithms that can be used towards computing neutrino oscillations in multi-dimensional models. We have developed a moment expansion method which is approximately 10 times more efficient than the old algorithm. We have also developed numerical codes to solve neutrino oscillations in toy models with two spatial dimensions. In the last front we used analytic methods to study neutrino oscillations in more sophisticated models, e.g. of multiple spatial dimensions and/or with time dependence. By analyzing the neutrino oscillations in toy models with two spacial dimensions we found that the approximate spacial translation symmetry, which is similar to the spherical symmetry in the neutrino bulb model, can be broken spontaneously as neutrino oscillations begin. By analyzing a time-dependent neutrino bulb model we found that certain modes of neutrino oscillations that are suppressed in the stationary model can become active in the time-dependent model. We have also developed theories which give insights to how ordinary matter may affect neutrino oscillations in supernovae and other astrophysical environments.

Duan, Huaiyu↗

GPGPU Enabled Adaptive Volume Visualization Using Commodity Game Engines

The amount of data produced by researchers in fields like nuclear engineering, materials science, and medicine has dramatically increased in recent years. There is a growing need to analyze and visualize this data in order to derive new insights. However, creating a visualization of data that is many gigabytes in size in real time is a difficult task since most graphics processing units (GPUs) are unable to hold this much data at one time. In order to alleviate this issue, an adaptive volume visualizer has been developed that is capable of rendering large scale datasets with high levels of detail at interactive framerates.

97 MATHEMATICS AND COMPUTING↗

EnergyPlus Interior Radiant Heat Exchange Runtime Performance Improvements

EnergyPlus is the flagship whole-building energy simulation program developed by the US Department of Energy. This paper describes the various approaches to improve the performance of the interior radiant heat exchange algorithm. Vectorization, optimized Basic Linear Algebra Subprograms (BLAS) library, multithreading, and Graphical Processing Unit (GPU) computation are all investigated. The approach with the best performance, while maintaining drop-in compatibility with existing EnergyPlus code, is the optimized BLAS library. However, GPU computing has the potential to reduce simulation time by orders of magnitude with major refactoring to EnergyPlus.

Adams, Mark↗

DEVELOPMENT OF ENSEMBLE-BASED PROBABILISTIC FLOOD MAPS FOR PROBABLE MAXIMUM FLOOD

The magnitude and frequency of hydro-meteorological extremes are expected to increase in a changing environment that threaten the security of US energy-water assets. This includes probable maximum precipitation (PMP) and probable maximum flood (PMF) which are used as hydraulic design standards for critical infrastructures such as major hydropower reservoirs and nuclear power plants. To assess the potential flood hazards due to PMP/PMF, an integrated high resolution process-based hydro-meteorologic modeling framework was utilized to develop ensemble-based probabilistic flood maps based on best-available historic observations and future climate projections. A graphical process unit accelerated 2-dimensional hydrodynamic model was used to simulate the surface inundation areas corresponding to a total of PMF hydrographs. These ensemble-based PMF maps were compared with flood maps obtained from the conventional deterministic PMP/PMF approach, revealing added information of conditional probability of flooding. Further, a relative sensitivity test was conducted to explore the effects of various factors in the framework such as meteorological forcings, antecedent hydrologic conditions, reservoir storage, and flood model input resolution and parameters. The proposed framework better illustrates the uncertainties associated with model inputs, parameterization and hydro-meteorological factors allowing more informed decision-making for future emergency preparation.

13 HYDRO ENERGY↗

Efficient thermo-mechanical simulation approaches for arc-and-wire based additive manufacturing

This study aims at the thermo-mechanical features inherent with the arc and wire metal deposition process to advance the structural simulation of additive manufacturing. Simulation approaches including iterative substructure method (ISM), dynamic mesh refining method (DMRM), and graphics processing unit (GPU) based explicit FEM code (GPU code) were developed for accelerating stress analysis and compared in terms of efficiency and accuracy. ISM and DMRM both take advantage of the strong nonlinearity phenomenon near the moving heat source, by reducing the global iterations and refining the local mesh respectively. The explicit FEM code was accelerated by a mass scaling technique based on the inherent strain concept. Two large parts by wire and arc additive manufacturing were analyzed, and the numerical results agreed very well with each other. The predicted distortion and residual stresses in the deposited layers were validated by experimental measurement. Compared with commercial software ABAQUS, the novel approaches reduced the computation cost substantially without compromising on accuracy. GPU code shows the highest computation efficiency (x30~70), while DMRM and ISM has an acceleration factor of x9 and x3 respectively. Owing to the minimum model simplification, such advanced simulation approaches will be very useful for structural analysis of additive manufacturing with complex deposition paths and product geometry.

Huang, Hui↗

Network packet templating for GPU-initiated communication

Systems, apparatuses, and methods for performing network packet templating for graphics processing unit (GPU)-initiated communication are disclosed. A central processing unit (CPU) creates a network packet according to a template and populates a first subset of fields of the network packet with static data. Next, the CPU stores the network packet in a memory. A GPU initiates execution of a kernel and detects a network communication request within the kernel and prior to the kernel completing execution. Responsive to this determination, the GPU populates a second subset of fields of the network packet with runtime data. Then, the GPU generates a notification that the network packet is ready to be processed. A network interface controller (NIC) processes the network packet using data retrieved from the first subset of fields and from the second subset of fields responsive to detecting the notification.

97 MATHEMATICS AND COMPUTING↗

xSDK: Building an ecosystem of highly efficient math libraries for exascale

Current efforts to build increasingly powerful computer architectures are opening up new avenues for more complex and higher fidelity simulations coupled with data analytics and learning, leading to new scientific insights and deeper understanding. At one extreme, exascale computers will be much faster than previous computer generations (performing 10 18 operations per second—that is, 1,000 times faster than petascale). To achieve these performance improvements, computer architectures are becoming increasingly complex, with deep memory hierarchies, very high node and core counts, and heterogeneous features such as graphics processing units (GPUs). Such architectural changes impact the full breadth of computing scales, as heterogeneity pervades even current-generation laptops, workstations, and moderate-sized clusters. While emerging advanced architectures provide unprecedented opportunities, they also present significant challenges for developers of scientific applications, such as multiphysics and multiscale codes, who must adapt their software to handle disruptive changes in architectures and new programming models that have not yet stabilized. Developers must consider increasing concurrency while reducing communication and synchronization, and other complexities such as the potential for using mixed precision to leverage the compute power available in low-precision tensor cores. On one hand, developers must implement new scientific capabilities, which in turn increase code complexity. On the other hand, the codes must be ported to new architectures, requiring the inclusion of new programming models and the restructuring of code to achieve good performance. Addressing these issues is beyond the capability of any single person or team—leading to the need for collaboration among many teams, who encapsulate their expertise in reusable software and work together to create sustainable software ecosystems.

97 MATHEMATICS AND COMPUTING↗

Efficient Computation Of Surface Sunlit Fractions In Urban-Scale Building Modeling Using Ray-Tracing Techniques

For building energy simulation at an urban-scale, solar shading calculations can be significantly slow when a large number of shading surfaces are considered in the solar shading calculations, due to the computational complexity of the geometry calculations. We developed a new algorithm using the ray-tracing technique to pre-calculate the sunlit fractions of all exterior surfaces in an urban district altogether. The ray tracing-based calculator is accelerated using General Purpose Graphics Processing Units (GPGPUs) and the Optix ray tracing library, and provides an efficient, flexible, and robust means for computing the sunlit fraction of large numbers of urban surfaces of complex geometries.

Luo, Xuan↗

GPU Usage in ATLAS Reconstruction and Analysis

With Graphical Processing Units (GPUs) and other kinds of accelerators becoming ever more accessible, High Performance Computing Centres all around the world using them ever more, ATLAS has to find the best way of making use of such accelerators in much of its computing. Tests with GPUs - mainly with CUDA - have been performed in the past in the experiment. At that time the conclusion was that it was not advantageous for the ATLAS offline and trigger software to invest time and money into GPUs. However as the usage of accelerators has become cheaper and simpler in recent years, their re-evaluation in ATLAS's offline software is warranted. We show new results of using GPU accelerated calculations in ATLAS's offline software environment using the ATLAS offline/analysis (xAOD) Event Data Model. We compare the performance and flexibility of a couple of the available GPU programming methods, and show how different memory management setups affect our ability to offload different types of calculations to a GPU efficiently.

72 PHYSICS OF ELEMENTARY PARTICLES AND FIELDS↗

Two-Stage Gauss-Seidel Preconditioners and Smoothers for Krylov Solvers on a GPU Cluster: Preprint

Gauss-Seidel (GS) relaxation is often employed as a preconditioner for a Krylov solver or as a smoother for Algebraic Multigrid (AMG). However, the requisite sparse triangular solve is difficult to parallelize on many-core architectures such as graphics processing units (GPUs). In the present study, the performance of the sequential GS relaxation based on a triangular solve is compared with two-stage variants, replacing the direct triangular solve with a fixed number of inner Jacobi-Richardson (JR) iterations. When a small number of inner iterations is sufficient to maintain the Krylov convergence rate, the two-stage GS (GS2) often outperforms the sequential algorithm on many-core architectures. The GS2 algorithm is also compared with JR. When they perform the same number of ops for SpMV (e.g. three JR sweeps compared to two GS sweeps with one inner JR sweep), the GS2 iterations, and the Krylov solver preconditioned with GS2, may converge faster than the JR iterations. Moreover, for some problems (e.g. elasticity), it was found that JR may diverge with a damping factor of one, whereas two-stage GS may improve the convergence with more inner iterations. Finally, to study the performance of the two-stage smoother and preconditioner for a practical problem, these were applied to incompressible uid ow simulations on GPUs.

algebraic multigrid↗

Evaluation of Portable Programming Models to Accelerate LArTPC Detector Simulations

The Liquid Argon Time Projection Chamber (LArTPC) technology is widely used in high energy physics experiments, including the upcoming Deep Underground Neutrino Experiment (DUNE). Accurately simulating LArTPC detector responses is essential for analysis algorithm development and physics model interpretations. Accurate LArTPC detector response simulations are computationally demanding, and can become a bottleneck in the analysis workflow. Compute devices such as General-Purpose Graphics Processing Units (GPGPUs) have the potential to substantially accelerate simulations compared to traditional CPU-only processing. The software development that requires often carries the cost of specialized code refactorization and porting to match the target hardware architecture. With the rapid evolution and increased diversity of the computer architecture landscape, it is highly desirable to have a portable solution that also maintains reasonable performance. We report our ongoing effort in evaluating Kokkos as a basis for this portable programming model using LArTPC simulations in the context of the Wire-Cell Toolkit, a C++ library for LArTPC simulations, data analysis, reconstruction and visualization.

46 INSTRUMENTATION RELATED TO NUCLEAR SCIENCE AND ↗

HPC Molecular Simulation Tries Out a New GPU: Experiences on Early AMD Test Systems for the Frontier Supercomputer

Molecular simulation is an important tool for nu- merous efforts in physics, chemistry, and the biological sciences. Simulating molecular dynamics requires extremely rapid cal- culations to enable sufficient sampling of simulated temporal molecular processes. The Hewlett Packard Enterprise (HPE) Cray EX Frontier supercomputer installed at the Oak Ridge Leadership Computing Facility (OLCF) will provide an exascale resource for open science, and will feature graphics processing units (GPUs) from Advanced Micro Devices (AMD). The future LUMI supercomputer in Finland will be based on an HPE Cray EX platform as well. Here we test the ports of several widely used molecular dynamics packages that have each made substantial use of acceleration with NVIDIA GPUs, on Spock, the early Cray pre-Frontier testbed system at the OLCF which employs AMD GPUs. These programs are used extensively in industry for pharmaceutical and materials research, as well as academia, and are also frequently deployed on high-performance computing (HPC) systems, including national leadership HPC resources. We find that in general, performance is competitive and installation is straightforward, even at these early stages in a new GPU ecosystem. Our experiences point to an expanding arena for GPU vendors in HPC for molecular simulation.

Sedova, Ada↗

Mesoflow: An Open-Source Reacting Flow Solver for Catalysis at Mesoscale

We present the capabilities and software performance metrics of our open-source continuum solver for catalysis, Mesoflow, developed specifically for modeling transport and chemistry at the mesoscale. Our solver utilizes Cartesian block-structured adaptive mesh refinement to resolve complex catalyst surface morphologies directly obtained from X-ray tomography data. An immersed boundary based formulation enables rapid representation of complex geometries prevalent in most mesoporous catalyst interfaces. The solver is developed on top of open-source performance portable library, AMReX, providing parallel execution capabilities on current and upcoming high-performance-computing (HPC) architectures. Our flexible software framework enables integration of complex chemical mechanisms at heterogenous interfaces and time-split algorithms for circumventing highly disparate reaction and flow time-scales. Our current studies indicate a ten-fold performance gain by using graphics-processing-units (GPUs) compared to a single processor for representative problem sizes (2 million cell mesh). We will also present a brief introduction on how to build and use this software for application problems pertaining to catalytic upgrading and gas transport within porous catalyst particles.

adaptive meshing↗

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↗

Simulating Catalysis with Realistic Pellet Geometries Using Mesoflow: A Case Study of Catalytic Propane Dehydrogenation

We present a case study of catalytic propane dehydrogenation with our open-source multiphysics solver, Mesoflow. The solver was developed to simulate reactive flow coupled to heterogeneous catalytic reactions and deactivation in the context of complex, mesoscale geometry. The method leverages cartesian block-structured adaptive mesh refinement to capture realistic catalyst microstructural features acquired directly from X-ray computed tomography data. A kinetic model for propane dehydrogenation and catalyst deactivation was developed based on temporal analysis of products (TAP) reactor experiments. The TAP reactor experiments allow for precise characterization of intrinsic kinetic reaction steps which are implemented into Mesoflow simulations to model the spatial and temporal evolution of reactants, products, and catalyst active sites. The short-term and long-term deactivation behavior is studied by using XCT data collected from fresh and aged catalyst pellets, which exhibit different microstructural features. This study employs time-splitting algorithms to connect disparate reaction and flow timescales, enabling the simulations to achieve realistic deactivation timescales on the order of minutes while the flow time-scales for small particles (100 microns) are several milliseconds. We also introduce a flexible automated python script that writes the necessary files to construct a Mesoflow simulation from user-created chemical mechanisms. We will also introduce a few new features that are added to Mesoflow such as higher order schemes, implicit chemistry integrators and the ability to run on AMD and NVIDIA graphics-processing-units.

AMReX↗

Development of GPU-based Monte Carlo code for fast CT imaging dose calculation on CUDA Fermi architecture

This paper describes the development of a Graphics Processing Unit (GPU) accelerated Monte Carlo photon transport code, ARCHER{sub GPU}, to perform CT imaging dose calculations with good accuracy and performance. The code simulates interactions of photons with heterogeneous materials. It contains a detailed CT scanner model and a family of patient phantoms. Several techniques are used to optimize the code for the GPU architecture. In the accuracy and performance test, a 142 kg adult male phantom was selected, and the CT scan protocol involved a whole-body axial scan, 20-mm x-ray beam collimation, 120 kVp and a pitch of 1. A total of 9 x 108 photons were simulated and the absorbed doses to 28 radiosensitive organs/tissues were calculated. The average percentage difference of the results obtained by the general-purpose production code MCNPX and ARCHER{sub GPU} was found to be less than 0.38%, indicating an excellent agreement. The total computation time was found to be 8,689, 139 and 56 minutes for MCNPX, ARCHER{sub CPU} (6-core) and ARCHER{sub GPU}, respectively, indicating a decent speedup. Under a recent grant funding from the NIH, the project aims at developing a Monte Carlo code with the capability of sub-minute CT organ dose calculations. (authors)

61 RADIATION PROTECTION AND DOSIMETRY↗

Investigation of Portable Event-Based Monte Carlo Transport Using the NVIDIA Thrust Library

Power consumption considerations are driving future high performance computing platforms toward many-core computing architectures. Los Alamos National Laboratory's Trinity machine, available in 2016, will use both Intel Xeon Haswell processors and Intel Xeon Phi Knights Landing many integrated core (MIC) architecture coprocessors. Lawrence Livermore National Laboratory's Sierra machine, available in 2018, will use an IBM PowerPC architecture along with Nvidia graphics processing unit (GPU) architecture accelerators. These different advanced architectures make the computing landscape in upcoming years complex. Traditional approaches to Monte Carlo transport do not work efficiently on these new computing platforms. MIC architectures require vectorization to operate efficiently, and vectorization is difficult to achieve in Monte Carlo transport. GPU architectures require additional code to explicitly use the hardware, requiring significant code changes or hardware specific branches in the source code. A significant challenge for Monte Carlo transport projects is to simultaneously support within a single source code base efficient simulations for both the current generation of architectures and the different advanced computing architectures. In order to address these challenges, two important changes are typically required: a new algorithmic approach for solving Monte Carlo transport, and explicit use of hardware specific software. In this paper, we describe initial research investigations of an event-based Monte Carlo transport algorithm implemented using the Nvidia Thrust library on a GPU for a Monte Carlo test code. The event-based algorithm targets many-core architectures by increasing SIMD (single instruction multiple data) parallelism, while Thrust potentially provides portable performance by allowing one source code base to compile code targeted for both CPUs and GPUs. We described preliminary investigations of portable event-based Monte Carlo algorithms implemented using the Nvidia Thrust library in a research Monte Carlo test code. We found that an explicit CUDA implementation of an event-based Monte Carlo algorithm performed significantly more efficiently than a Thrust implementation on GPU platforms, most likely as a result of additional flexibility in access to different memory spaces on the GPU. Additionally, we showed that on GPU platforms and at large enough problem sizes the event-based implementations perform more efficiently than the serial history-based implementation running on the host CPU. While investigating this problem, we also discovered that the performance of the event-based algorithm is affected by what tallies are being used. A zonal scalar flux tally requires atomic operations that significantly impacted the performance of the code, in some cases producing slowdowns instead of speedups. We decided to remove the tally in order to focus on the effectiveness of the event-based algorithm. Future work will be required to research more effective ways of handling such tallies. Additionally, we would like to consider new ways for optimizing both the Thrust and CUDA versions, in order to see how much performance we have yet to achieve. The potential trade-off between portability and performance was demonstrated in this investigation. Thrust provides both CPU and GPU versions of the code in one code base, but it does so at a cost. We discovered approximately a factor of 2-5 performance difference between Thrust and CUDA on each GPU platform we tested. Thrust provides a tool to access the GPUs with less effort and specialization, but it does so by giving up fine grained control where extra performance can be found for this application. Future work will be required to determine whether this performance differential between Thrust and CUDA can be reduced for event-based Monte Carlo transport. (authors)

73 NUCLEAR PHYSICS AND RADIATION PHYSICS↗