Search NASA⌕ Search

SEARCH · Search NASA

Results for “Programming Models”

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

Traleika Glacier: A hardware-software co-designed approach to exascale computing

The move from current petascale machines to future exascale machines will need both hardware improvements and software changes. Hardware will need to evolve to focus primarily on features that lower energy consumption: near-threshold voltage operation, fine-grained power and clock management and heterogeneity. Software will also need to evolve and be able to express more parallelism, become more dynamic and adaptable in order to be able to operate on a much more variable hardware. Here, we present Traleika Glacier, an effort that seeks to evaluate radical design changes to meet the constraints, both in terms of power and cost, of exascale computing. The salient features of the hardware design presented in the work include a) a use of heterogeneous cores, b) a redesign of the memory system that centers around hierarchical scratchpads and a global address space, c) the hardware acceleration of certain memory and network operations through specialized engines and, d) very fine-grained control and monitoring capabilities. On the software side, we describe a task-based runtime system, the Open Community Runtime (OCR) which aims to express a wide range of higher-level programming models with a very limited set of core concepts: event-driven tasks for computation, events for synchronization and relocatable data-blocks for data management.

97 MATHEMATICS AND COMPUTING↗

Compiler-based code generation and autotuning for geometric multigrid on GPU-accelerated supercomputers

GPUs, with their high bandwidths and computational capabilities are an increasingly popular target for scientific computing. Unfortunately, to date, harnessing the power of the GPU has required use of a GPU-specific programming model like CUDA, OpenCL, or OpenACC. Thus, in order to deliver portability across CPU-based and GPU-accelerated supercomputers, programmers are forced to write and maintain two versions of their applications or frameworks. In this paper, we explore the use of a compiler-based autotuning framework based on CUDA-CHiLL to deliver not only portability, but also performance portability across CPU- and GPU-accelerated platforms for the geometric multigrid linear solvers found in many scientific applications. We also show that with autotuning we can attain near Roofline (a performance bound for a computation and target architecture) performance across the key operations in the miniGMG benchmark for both CPU- and GPU-based architectures as well as for a multiple stencil discretizations and smoothers. We show that our technology is readily interoperable with MPI resulting in performance at scale equal to that obtained via hand-optimized MPI+CUDA implementation.

97 MATHEMATICS AND COMPUTING↗

Evaluating MPI resource usage summary statistics

The Message Passing Interface (MPI) remains the dominant programming model for scientific applications running on today’s high-performance computing (HPC) systems. This dominance stems from MPI’s powerful semantics for inter-process communication that has enabled scientists to write applications for simulating important physical phenomena. MPI does not, however, specify how messages and synchronization should be carried out. Those details are typically dependent on low-level architecture details and the message characteristics of the application. Therefore, analyzing an application’s MPI resource usage is critical to tuning MPI’s performance on a particular platform. The result of this analysis is typically a discussion of the mean message sizes, queue search lengths and message arrival times for a workload or set of workloads. While a discussion of the arithmetic mean in MPI resource usage might be the most intuitive summary statistic, it is not always the most accurate in terms of representing the underlying data. In this paper, we analyze MPI resource usage for a number of key MPI workloads using an existing MPI trace collector and discrete-event simulator. Our analysis demonstrates that the average, while easy and efficient to calculate, is a useful metric for characterizing latency and bandwidth measurements, but may not be a good representation of application message sizes, match list search depths, or MPI inter-operation times. Additionally, we show that the median and mode are superior choices in many cases. We also observe that the arithmetic mean is not the best representation of central tendency for data that are drawn from distributions that are multi-modal or have heavy tails. Furthermore, the results and analysis of our work provide valuable guidance on how we, as a community, should discuss and analyze MPI resource usage data for scientific applications.

97 MATHEMATICS AND COMPUTING↗

Measurement and analysis of GPU-accelerated applications with HPCToolkit

To address the challenge of performance analysis on the US DOE’s forthcoming exascale supercomputers, Rice University has been extending its HPCToolkit performance tools to support measurement and analysis of GPU-accelerated applications. To help developers understand the performance of accelerated applications as a whole, HPCToolkit’s measurement and analysis tools attribute metrics to calling contexts that span both CPUs and GPUs. To measure GPU-accelerated applications efficiently, HPCToolkit employs a novel wait-free data structure to coordinate monitoring and attribution of GPU performance. To help developers understand the performance of complex GPU code generated from high-level programming models, HPCToolkit constructs sophisticated approximations of call path profiles for GPU computations. To support fine-grained analysis and tuning, HPCToolkit uses PC sampling and instrumentation to measure and attribute GPU performance metrics to source lines, loops, and inlined code. To supplement fine-grained measurements, HPCToolkit can measure GPU kernel executions using hardware performance counters. To provide a view of how an execution evolves over time, HPCToolkit can collect, analyze, and visualize call path traces within and across nodes. Finally, on NVIDIA GPUs, HPCToolkit can derive and attribute a collection of useful performance metrics based on measurements using GPU PC samples. Here, we illustrate HPCToolkit’s new capabilities for analyzing GPU-accelerated applications with several codes developed as part of the Exascale Computing Project.

97 MATHEMATICS AND COMPUTING↗

OpenMP application experiences: Porting to accelerated nodes

As recent enhancements to the OpenMP specification become available in its implementations, there is a need to share the results of experimentation in order to better understand the OpenMP implementation’s behavior in practice, to identify pitfalls, and to learn how the implementations can be effectively deployed in scientific codes. We report on experiences gained and practices adopted when using OpenMP to port a variety of ECP applications, mini-apps and libraries based on different computational motifs to accelerator-based leadership-class high-performance supercomputer systems at the United States Department of Energy. Additionally, we identify important challenges and open problems related to the deployment of OpenMP. Through our report of experiences, we find that OpenMP implementations are successful on current supercomputing platforms and that OpenMP is a promising programming model to use for applications to be run on emerging and future platforms with accelerated nodes.

97 MATHEMATICS AND COMPUTING↗

Multi-GPU porting of a phase-change cascaded lattice Boltzmann method for three-dimensional pool boiling simulations

The Lattice Boltzmann method (LBM) has proven effective in simulating phase-change phenomena, such as melting, solidification, evaporation, and boiling. In this work, we develop a highly parallelized multi-GPU implementation of LBM for three-dimensional pool boiling simulations. The code is based on the OpenACC programming model, which enables the code to be deployed efficiently on multi-core CPUs, GPUs, and potentially other accelerators, without the need for architecture-specific rewrites. To support large-scale simulations, the domain is decomposed and distributed across multiple compute nodes using MPI. We demonstrate that the code exhibits excellent scaling properties, with ideal strong-scaling running with up to 256 GPUs on the MareNostrum5 cluster.

97 MATHEMATICS AND COMPUTING↗

Techno-economic analysis and network design for CO 2 conversion to jet fuels in the United States

The conversion of carbon dioxide (CO 2 ) into jet fuel holds significant potential for reducing CO 2 emissions, providing an alternative to carbon-based resources, and offering a renewable means of energy storage. The objective of this study is to conduct a techno-economic analysis and optimize the supply chain network for converting CO 2 to jet fuel in the United States, aiming to minimize total costs while assessing the environmental and economic feasibility of two CO 2 conversion pathways. This first pathway is based on Fischer-Tropsch synthesis (FTS), and the other one is based on the valorization and upgrading of light methanol (MeOH). Incorporating spatial and techno-economic data, a mixed-integer linear programming model was developed to select source plants and conversion pathways, locations of conversion refinery sites, and the amount of captured CO 2 across the United States. The optimal results indicate that the FTS pathway is adopted at all selected refineries when the hydrogen price is 1000 dollars/t and the operating cost, mainly electricity used in conversion, is reduced to 5 % of its current level. Under this scenario, the total annual profit is 8 billion dollars, and the net carbon emissions are -88,783,284 tons. The sensitivity analyses reveal that the prices of electricity and hydrogen significantly contribute to total production costs. The CO 2 recycle percentage of the FTS pathway influences the choice of applied pathways at refineries. Additionally, a higher conversion rate holds a substantial promise for reducing the total production cost and can make the MeOH pathway a viable choice.

10 SYNTHETIC FUELS↗

Generation of low–latitude seamount–trapped waves: a case study of the Seychelles Plateau

Baroclinic seamount-trapped waves are thought to influence their surrounding ecosystem; however, trapped waves are not well-studied in near-equatorial settings, where stratification is strong and Burger numbers are large. Motivated by observations, we use daily output (2005-2009) from the global 0.1-degree Parallel Ocean Program Model (POP) to examine topographically trapped baroclinic waves around the Seychelles Plateau (S > 400) in the tropical Indian Ocean. These trapped waves are associated with velocity and temperature oscillations at periods of 15–16 days, similar to the dominant period of some equatorial Yanai waves. Energy flux maps using POP output suggest that quasi-biweekly equatorial Yanai waves excite trapped waves on the western and south-western flanks of the Seychelles Plateau, near the surface. Here, the anticyclonic energy flux associated with the trapped wave extends vertically throughout the water column and around most of the plateau circumference, diminishing on the eastern flank of the plateau. This work highlights the role that equatorial planetary waves and trapped waves play in facilitating energy redistribution, dissipation, and mixing in the tropical ocean.

58 GEOSCIENCES↗

Assessing the benefits of capacity payment, feed‐in‐tariff and time‐of‐use programme on long‐term renewable energy sources integration

Recently, demand response programmes (DRPs) have captured great attention in electric power systems. DRPs such as time‐of‐use (ToU) programme can be efficiently employed in the power system planning to reform the long‐term behaviour of the load demands. The composite generation expansion planning (GEP) and transmission expansion planning (TEP) known as composite GEP–TEP is of high significance in power systems to meet the future load demand of the system and also integrate renewable energy sources (RESs). In this regard, this study presents a dynamic optimisation framework for the composite GEP–TEP problem taking into consideration the ToU programme and also, the incentive‐based and supportive programmes. Accordingly, the performances of the capacity payment and feed‐in tariff mechanisms and the ToU programme in integrating RESs and reducing the total cost have been evaluated in this study. The problem has been formulated and solved as a standard two‐stage mixed‐integer linear programming model aimed at minimising the total costs. In this model, the ToU programme is applied and the results are fed into the expansion planning problem as the input. The proposed framework is simulated on the IEEE Reliability Test System to verify the effectiveness of the model and discuss the results obtained from implementing the mentioned mechanisms to support the RESs integration.

Javadi, Mohammad Sadegh↗

A Parallelised ROOT for Future HEP Data Processing

In the coming years, HEP data processing will need to exploit parallelism on present and future hardware resources to sustain the bandwidth requirements. As one of the cornerstones of the HEP software ecosystem, ROOT embraced an ambitious parallelisation plan which delivered compelling results. In this contribution the strategy is characterised as well as its evolution in the medium term. The units of the ROOT framework are discussed where task and data parallelism have been introduced, with runtime and scaling measurements. We will give an overview of concurrent operations in ROOT, for instance in the areas of I/O (reading and writing of data), fitting / minimization, and data analysis. This paper introduces the programming model and use cases for explicit and implicit parallelism, where the former is explicit in user code and the latter is implicitly managed by ROOT internally.

97 MATHEMATICS AND COMPUTING↗

Writing ROOT Data in Parallel with TBufferMerger

Experiments at the Large Hadron Collider (LHC) produce tens of petabytes of new data in ROOT format per year that need to be processed and analysed. In the next decade, following the planned upgrades of the LHC and its detectors, this data production rate is expected to increase at least ten-fold. Therefore, optimizing the ROOT I/O subsystem is of critical importance to the success of the LHC physics programme. This contribution presents ROOT’s approach for writing data from multiple threads to a single output file in an efficient way. Technical aspects of the implementation—the TBufferMerger class—and programming model examples are described. Measurements of runtime performance and the overall improvement relative to the case of serial data writing are also discussed.

47 OTHER INSTRUMENTATION↗

RDataFrame: Easy Parallel ROOT Analysis at 100 Threads

The Physics programmes of LHC Run III and HL-LHC challenge the HEP community. The volume of data to be handled is unprecedented at every step of the data processing chain: analysis is no exception. Physicists must be provided with first-class analysis tools which are easy to use, exploit bleeding edge hardware technologies and allow to seamlessly express parallelism. This document discusses the declarative analysis engine of ROOT, RDataFrame, and gives details about how it allows to profitably exploit commodity hardware as well as high-end servers and manycore accelerators thanks to the synergy with the existing parallelised ROOT components. Real-life analyses of LHC experiments’ data expressed in terms of RDataFrame are presented, highlighting the programming model provided to express them in a concise and powerful way. The recent developments which make RDataFrame a lightweight data processing framework are described, such as callbacks and I/O capabilities. Finally, the flexibility of RDataFrame and its ability to read data formats other than ROOT’s are characterised, as an example it is discussed how RDataFrame can directly read and analyse LHCb’s raw data format MDF.

72 PHYSICS OF ELEMENTARY PARTICLES AND FIELDS↗

Performance of CUDA Unified Memory in CMS Heterogeneous Pixel Reconstruction

The management of separate memory spaces of CPUs and GPUs brings an additional burden to the development of software for GPUs. To help with this, CUDA unified memory provides a single address space that can be accessed from both CPU and GPU. The automatic data transfer mechanism is based on page faults generated by the memory accesses. This mechanism has a performance cost, that can be with explicit memory prefetch requests. Various hints on the inteded usage of the memory regions can also be given to further improve the performance. The overall effect of unified memory compared to an explicit memory management can depend heavily on the application. In this paper we evaluate the performance impact of CUDA unified memory using the heterogeneous pixel reconstruction code from the CMS experiment as a realistic use case of a GPU-targeting HEP reconstruction software. We also compare the programming model using CUDA unified memory to the explicit management of separate CPU and GPU memory spaces.

Kortelainen, Matti J.↗

Measurement and modeling of electric field and space-charge distributions in obstructed helium discharge

Axial and radial variations of electric field have been measured in dielectric shielded 0.025 m diameter parallel plate electrode with 0.0065 m gap for 1.6 mA, 2260 V helium dc discharge at 1.75 Torr. The axial and radial electric field profiles have been measured from the Stark splitting of 2{sup 1}S→11 {sup 1}P transition through collision induced fluorescence from 4{sup 3}D→2{sup 3}P. The electric field values showed a strong radial variation peaking to 500 kV/m near the cathode radial boundary, and decreasing to about 100 kV/m near the anode edge, suggesting the formation of an obstructed discharge for this low nd condition, where n is the gas density and d is the gap distance. The off-axis Stark spectra showed that the electric field vector deviates from normal to the cathode surface which permits longer path electron trajectories in the inter-electrode gap. Also, the on-axis electric field gradient was very small and off-axis electric field gradient was large indicating a radially non-uniform current density. In order to obtain information about the space charge distribution in this obstructed discharge, it was modeled using the 2-d axisymmetric Poisson solver with the COMSOL finite element modeling program. The best fit to the measured electric field distribution was obtained with a space charge variation of ρ(r) = ρ{sub 0}(r/r{sub 0}){sup 3}, where ρ(r) is the local space charge density, ρ{sub 0} = 6 × 10{sup −3} Coulomb/m{sup 3}, r is the local radial value, and r{sub 0} is the radius of the electrode.

70 PLASMA PHYSICS AND FUSION TECHNOLOGY↗

ddcMD: A fully GPU-accelerated molecular dynamics program for the Martini force field

We have implemented the Martini force field within Lawrence Livermore National Laboratory’s molecular dynamics program, ddcMD. The program is extended to a heterogeneous programming model so that it can exploit graphics processing unit (GPU) accelerators. In addition to the Martini force field being ported to the GPU, the entire integration step, including thermostat, barostat, and constraint solver, is ported as well, which speeds up the simulations to 278-fold using one GPU vs one central processing unit (CPU) core. A benchmark study is performed with several test cases, comparing ddcMD and GROMACS Martini simulations. The average performance of ddcMD for a protein–lipid simulation system of 136k particles achieves 1.04 µs/day on one NVIDIA V100 GPU and aggregates 6.19 µs/day on one Summit node with six GPUs. The GPU implementation in ddcMD offloads all computations to the GPU and only requires one CPU core per simulation to manage the inputs and outputs, freeing up remaining CPU resources on the compute node for alternative tasks often required in complex simulation campaigns.

37 INORGANIC, ORGANIC, PHYSICAL, AND ANALYTICAL CH↗

Multi-level parallelization of quantum-chemical calculations

Here, strategies for multiple-level parallelizations of quantum-mechanical calculations are discussed, with an emphasis on using groups of workers for performing parallel tasks. These parallel programming models can be used for a variety ab initio quantum chemistry approaches, including the fragment molecular orbital method and replica-exchange molecular dynamics. Strategies for efficient load balancing on problems of increasing granularity are introduced and discussed. A four-level parallelization is developed based on a multi-level hierarchical grouping, and a high parallel efficiency is achieved on the Theta supercomputer using 131 072 OpenMP threads.

37 INORGANIC, ORGANIC, PHYSICAL, AND ANALYTICAL CH↗

Extraction Behavior of Ln(III) ions by T2EHDGA/n-dodecane from Nitric acid and Sodium Nitrate Solutions

The diglycolamide extractant, T2EHDGA, has proven promising for the separation of lanthanides and minor actinides in high-level nuclear waste reprocessing. This neutral extractant has shown significant extraction capacity for HNO3 into the non-polar organic phase, along with hyper-stoichiometric nitrate dependence on extraction of trivalent f-elements. The transport behavior of T2EHDGA/n-dodecane toward trivalent lanthanides is not well understood. This work found a significant increase in distribution measurements for Eu(III) extracted from aqueous HNO3 media as compared to NaNO3. The extraction of Eu(III) from HNO3 results in a different thermodynamic product than predicted by classic solvent extraction of 3:1 ligand-metal complex as observed with NaNO3 in FTIR and UV-vis spectroscopy. Experimental distribution measurements in conjunction with the solvent extraction modeling program, SXLSQI, suggest participation of 1- to 2 HNO3 molecules in the Eu(III)/T2EHDGA complex when extracted from HNO3 media, indicative of a mechanism change responsible for the enhanced extraction behavior toward lanthanides in the presence of HNO3.

Campbell, Emily L.↗

Speeding up software with VecCore

Portable and efficient vectorization is a significant challenge in large software projects such as GeantV, ROOT, and experiments’ frameworks. Nevertheless, fully exploiting SIMD parallelism will be a required step in order to bridge the widening gap between the needs and availability of computing resouces for data analysis and processing in particle physics. Although there are SIMD libraries that wrap compiler intrinsics into a convenient interface, they do not always support all available architectures, or they only perform well in some of them. The VecCore library was created to address some of these performance and portability issues by providing a unified abstraction layer on top of existing libraries, such as Vc or UME::SIMD. In this article, we discuss VecCore’s programming model for SIMD code and some use cases in HEP software packages such as VecGeom and GeantV.

Amadio, G.↗