Search NASA⌕ Search

SEARCH · Search NASA

Results for “scalable computing”

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 955 records · Page 53

Towards exascale for wind energy simulations

We examine large-eddy-simulation modeling approaches and computational performance of two open-source computational fluid dynamics codes for the simulation of atmospheric boundary layer flows that are of direct relevance to wind energy production. The first code, NekRS, is a high-order, unstructured-grid, spectral element code. The second code, AMR-Wind, is a second-order, block-structured, finite-volume code with adaptive mesh refinement capabilities. The objective of this study is to co-develop these codes in order to improve model fidelity and performance for each. These features will be critical for running ABL-based applications such as wind farm analysis on advanced computing architectures. To this end, we investigate the performance of NekRS and AMR-Wind on the Oak Ridge Leadership Facility supercomputers Summit, using 4 to 800 nodes (24 to 4,800 NVIDIA V100 GPUs), and Crusher, the testbed for the Frontier exascale system, using 18 to 384 Graphics Compute Dies on AMD MI250X GPUs. We compare strong- and weak-scaling capabilities, linear solver performance, and time to solution. We also identify leading inhibitors to parallel scaling.

17 WIND ENERGY↗

Wavelet-Smoothed Interpolation of Masked Scientific Data for JPEG 2000 Compression [Slides]

How should we manage scientific data with 'holes'? Some applications, like JPEG 2000, expect logically rectangular data, but some sources, like the Parallel Ocean Program (POP), generate data that isn't defined on certain subsets. We refer to grid points that lack well-defined, scientifically meaningful sample values as 'masked' samples. Wavelet-smoothing is a highly scalable interpolation scheme for regions with complex boundaries on logically rectangular grids. Computation is based on forward/inverse discrete wavelet transforms, so runtime complexity and memory scale linearly with respect to sample count. Efficient state-of-the-art minimal realizations yield small constants (O(10)) for arithmetic complexity scaling, and in-situ implementation techniques make optimal use of memory. Implementation in two dimensions using tensor product filter banks is straighsorward and should generalize routinely to higher dimensions. No hand-tuning required when the interpolation mask changes, making the method aeractive for problems with time-varying masks. Well-suited for interpolating undefined samples prior to JPEG 2000 encoding. The method outperforms global mean interpolation, as judged by both SNR rate-distortion performance and low-rate artifact mitigation, for data distributions whose histograms do not take the form of sharply peaked, symmetric, unimodal probability density functions. These performance advantages can hold even for data whose distribution differs only moderately from the peaked unimodal case, as demonstrated by POP salinity data. The interpolation method is very general and is not tied to any particular class of applications, could be used for more generic smooth interpolation.

42 ENGINEERING↗

Comprehensive Benchmark Suite for Simulation of Particle Laden Flows Using the Discrete Element Method with Performance Profiles from the Multiphase Flow with Interface eXchanges (MFiX) Code

Five benchmark problems are developed and simulated with the computational fluid dynamics and discrete element model code MFiX. The benchmark problems span dilute and dense regimes, consider statistically homogeneous and inhomogeneous (both clusters and bubbles) particle concentrations and a range of particle and fluid dynamic computational loads. Several variations of the benchmark problems are also discussed to extend the computational phase space to cover granular (particles only), bidisperse and heat transfer cases. A weak scaling analysis is performed for each benchmark problem and, in most cases, the scalability of the code appears reasonable up to approx. 103 cores. Profiling of the benchmark problems indicate that the most substantial computational time is being spent on particle-particle force calculations, drag force calculations and interpolating between discrete particle and continuum fields. Hardware performance analysis was also carried out showing significant Level 2 cache miss ratios and a rather low degree of vectorization. These results are intended to serve as a baseline for future developments to the code as well as a preliminary indicator of where to best focus performance optimizations.

97 MATHEMATICS AND COMPUTING↗

The Portals 4.1 Network Programming Interface

This report presents a specification for the Portals 4 networ k programming interface. Portals 4 is intended to allow scalable, high-performance network communication betwee n nodes of a parallel computing system. Portals 4 is well suited to massively parallel processing and embedded syste ms. Portals 4 represents an adaption of the data movement layer developed for massively parallel processing platfor ms, such as the 4500-node Intel TeraFLOPS machine. Sandia's Cplant cluster project motivated the development of Version 3.0, which was later extended to Version 3.3 as part of the Cray Red Storm machine and XT line. Version 4 is tar geted to the next generation of machines employing advanced network interface architectures that support enh anced offload capabilities.

97 MATHEMATICS AND COMPUTING↗

Fiscal Year 2017 Report on SCALE Maintenance and Development (Publicly Available)

Develop, deploy, and support a quality-assured computational toolkit that advances the state of the art and exemplifies ease of use in a scalable architecture beginning with fundamental physical data and providing research, production, and licensing calculations for current and emerging nuclear modeling and simulation needs.

97 MATHEMATICS AND COMPUTING↗

Coordinated PEV Charging for Distribution System Management

Plug-in electric vehicles (PEVs) can help to reduce worldwide dependence on petroleum and carbon emissions. In the past a few years, PEVs have received considerable attention as an eco-friendly and cost-effective alternative to conventional gasoline vehicles. PEVs consume higher power from the grid during charging compared to conventional residential loads. Therefore, the emerging fleet of PEVs will introduce a considerable amount of additional load on power system. On the other hand, majority of PEVs are parked for more than 90% of the time, making them ideal for providing various services through Electric Vehicle Supply Equipment (EVSE), a.k.a. charging stations which are PEVs’ connection points to the power system. In this project, coordinated PEV charging are developed to provide distribution system services, considering PEV characteristics, realistic travel pattern, charging behaviors, and EVSE power rating and availability. The main efforts and contributions are summarized as follows. • Mobility models and EVSE charging capability/availability are indispensable for evaluating PEV charging coordination strategies and developing PEV charging control. Many existing studies utilize simplified mobility models assuming that the entire vehicle fleet returns home in the evening and is parked at home until the next morning. Some other PEV models better represent diversified home arrival and departure time, but cannot capture varying charging flexibility and capability at different locations, and therefore are not appropriate to study the impacts of public EVSE on PEV load and utilization. In this work, a mobility and charging flexibility model is proposed to better represent the temporal availability and varying charging capability from PEV onboard charger and EVSE. • Based on the mobility model, a generalized optimization method is proposed to evaluate different PEV charging coordination strategies. In existing literature, different algorithms and methods need to be designed to evaluate each charging strategy from both vehicle owners’ and system’s perspective. With the optimization method proposed in this work, different charging control strategies can be studied and compared by only updating objective functions. Moreover, optimization tricks are provided to convert the optimization problems to equivalent linear programming problems, which can be efficiently solved with existing solvers. • An innovative scheduling and control framework is proposed to enable smart PEV charging for grid services while meeting PEV owners’ travel needs. In the proposed framework, each set of EVSE is equipped with a controller that estimates charging power and energy flexibility based on vehicle characteristics, EVSE power rating, battery energy state, and upcoming trip information. With the simplified charging flexibility model received from each EVSE controller, the central coordinator determines the optimal power allocation for a look-ahead time window for the given grid services. The proposed charging control can help reduce the computational complexity and communication requirement compared with existing methods. It is also scalable to the expanding PEV fleet and robust to uncertainties in upcoming vehicle trips and future system condition. • The proposed charging strategy evaluation and smart charging control methods are applied to one of the prototypical feeders developed by the Pacific Northwest National Laboratory (PNNL) for case studies. Detailed trip information extracted from the National Household Travel Survey (NHTS) is used to represent travel and parking patterns. Different scenarios are simulated to evaluate the performance of the proposed methods and understand how PEV mobility and public EVSE availability affect PEV load and potential grid services.

32 ENERGY CONSERVATION, CONSUMPTION, AND UTILIZATI↗

UPC++ v1.0 Specification, Revision 2020.10.0

UPC++ is a C++11 library providing classes and functions that support Partitioned Global Address Space (PGAS) programming. The key communication facilities in UPC++ are one-sided Remote Memory Access (RMA) and Remote Procedure Call (RPC). All communication operations are syntactically explicit and default to non-blocking; asynchrony is managed through the use of futures, promises and continuation callbacks, enabling the programmer to construct a graph of operations to execute asynchronously as high-latency dependencies are satisfied. A global pointer abstraction provides system-wide addressability of shared memory, including host and accelerator memories. The parallelism model is primarily process-based, but the interface is thread-safe and designed to allow efficient and expressive use in multi-threaded applications. The interface is designed for extreme scalability throughout, and deliberately avoids design features that could inhibit scalability.

97 MATHEMATICS AND COMPUTING↗

UPC++ v1.0 Specification (Rev. 2023.9.0)

UPC++ is a C++ library providing classes and functions that support Partitioned Global Address Space (PGAS) programming. The key communication facilities in UPC++ are one-sided Remote Memory Access (RMA) and Remote Procedure Call (RPC). All communication operations are syntactically explicit and default to non-blocking; asynchrony is managed through the use of futures, promises and continuation callbacks, enabling the programmer to construct a graph of operations to execute asynchronously as high-latency dependencies are satisfied. A global pointer abstraction provides system-wide addressability of shared memory, including host and accelerator memories. The parallelism model is primarily process-based, but the interface is thread-safe and designed to allow efficient and expressive use in multi-threaded applications. The interface is designed for extreme scalability throughout, and deliberately avoids design features that could inhibit scalability.

97 MATHEMATICS AND COMPUTING↗

Salt Hydrate Eutectic Thermal Energy Storage for Building Thermal Regulation (Final Technical Report)

Thermal energy storage is anticipated to play an important role in developing the power grid of the future - a power grid that meets increasing demands of users, is resistant to disruptions, but also allows for greater penetration of renewable resources. Specifically, thermal energy storage materials can be integrated into HVAC systems and building envelopes, where they can be used to shift power demands for building climate control from periods of peak demand to periods of low demand. Phase change materials (PCMs) are compelling as low-cost, high energy density thermal energy storage materials for building thermal management. However, there is a lack of high performance low-cost PCMs within the specific temperature ranges which would most effectively allow for power load shifting. Inorganic salt hydrates represent a promising class of PCMs, but their inherent limitations cause them to be currently unavailable for reliable building applications. The overarching goals of this research effort are to: 1) Discover low-cost, high volumetric density salt hydrate eutectic PCMs to store low-quality heat (10 to 40 °C); 2) Introduce a high thermal conductivity matrix to reduce the time constant for energy storage to ~0.1 to 1 hr, incorporate nucleation catalysts to decrease undercooling, and utilize microencapsulation and shape stabilization approaches, minimizing moisture loss/gain, mitigating phase separation, and maintaining stable melting behavior over the lifetime of the compounds; 3) Evaluate the impact these systems have on peak load shifting, and the potential for overall energy savings under different climatic scenarios and building configurations. These goals will be achieved by an integrated research program consisting of six cohesive research subtasks: 1) Materials discovery of eutectic salt hydrate PCMs by using computationally predicted thermodynamic equilibria, coupled with high-throughput experimental validation, 2) Rapid experimental screening of nucleation catalysts identified through robust computational databases, 3) Embedding salt hydrate PCM into a low cost and scalable high conductivity matrix, 4) Microencapsulation of salt hydrate microspheres using hybrid inorganic-polymer microencapsulation approach, 5) Shape stabilization by thermoreversible salt hydrate salogels, and 6) Analysis of end-use using thermal simulations, and characterization of mock-up energy storage finished components.

25 ENERGY STORAGE↗

Error mitigation with Clifford quantum-circuit data

Achieving near-term quantum observables despite significant hardware noise. For this purpose, we propose a novel, scalable error-mitigation method that applies to gate-based quantum computers. The method generates training data { X i noisy , X i exact } via quantum circuits composed largely of Clifford gates, which can be efficiently simulated classically, where X i noisy and X i exact are noisy and noiseless observables respectively. Fitting a linear ansatz to this data then allows for the prediction of noise-free observables for arbitrary circuits. We analyze the performance of our method versus the number of qubits, circuit depth, and number of non-Clifford gates. Here, we obtain an order-of-magnitude error reduction for a ground-state energy problem on 16 qubits in an IBMQ quantum computer and on a 64-qubit noisy simulator.

97 MATHEMATICS AND COMPUTING↗

UPC++ v1.0 Specification (Revision 2022.3.0)

UPC++ is a C++ library providing classes and functions that support Partitioned Global Address Space (PGAS) programming. The key communication facilities in UPC++ are one-sided Remote Memory Access (RMA) and Remote Procedure Call (RPC). All communication operations are syntactically explicit and default to non-blocking; asynchrony is managed through the use of futures, promises and continuation callbacks, enabling the programmer to construct a graph of operations to execute asynchronously as high-latency dependencies are satisfied. A global pointer abstraction provides system-wide addressability of shared memory, including host and accelerator memories. The parallelism model is primarily process-based, but the interface is thread-safe and designed to allow efficient and expressive use in multi-threaded applications. The interface is designed for extreme scalability throughout, and deliberately avoids design features that could inhibit scalability.

97 MATHEMATICS AND COMPUTING↗

UPC++ v1.0 Specification, Revision 2023.3.0

UPC++ is a C++ library providing classes and functions that support Partitioned Global Address Space (PGAS) programming. The key communication facilities in UPC++ are one-sided Remote Memory Access (RMA) and Remote Procedure Call (RPC). All communication operations are syntactically explicit and default to non-blocking; asynchrony is managed through the use of futures, promises and continuation callbacks, enabling the programmer to construct a graph of operations to execute asynchronously as high-latency dependencies are satisfied. A global pointer abstraction provides system-wide addressability of shared memory, including host and accelerator memories. The parallelism model is primarily process-based, but the interface is thread-safe and designed to allow efficient and expressive use in multi-threaded applications. The interface is designed for extreme scalability throughout, and deliberately avoids design features that could inhibit scalability.

97 MATHEMATICS AND COMPUTING↗

UPC++ v1.0 Specification (Revision 2021.3.0)

UPC++ is a C++11 library providing classes and functions that support Partitioned Global Address Space (PGAS) programming. The key communication facilities in UPC++ are one-sided Remote Memory Access (RMA) and Remote Procedure Call (RPC). All communication operations are syntactically explicit and default to non-blocking; asynchrony is managed through the use of futures, promises and continuation callbacks, enabling the programmer to construct a graph of operations to execute asynchronously as high-latency dependencies are satisfied. A global pointer abstraction provides system-wide addressability of shared memory, including host and accelerator memories. The parallelism model is primarily process-based, but the interface is thread-safe and designed to allow efficient and expressive use in multi-threaded applications. The interface is designed for extreme scalability throughout, and deliberately avoids design features that could inhibit scalability.

97 MATHEMATICS AND COMPUTING↗

UPC++ v1.0 Specification, Revision 2022.9.0

UPC++ is a C++ library providing classes and functions that support Partitioned Global Address Space (PGAS) programming. The key communication facilities in UPC++ are one-sided Remote Memory Access (RMA) and Remote Procedure Call (RPC). All communication operations are syntactically explicit and default to non-blocking; asynchrony is managed through the use of futures, promises and continuation callbacks, enabling the programmer to construct a graph of operations to execute asynchronously as high-latency dependencies are satisfied. A global pointer abstraction provides system-wide addressability of shared memory, including host and accelerator memories. The parallelism model is primarily process-based, but the interface is thread-safe and designed to allow efficient and expressive use in multi-threaded applications. The interface is designed for extreme scalability throughout, and deliberately avoids design features that could inhibit scalability.

97 MATHEMATICS AND COMPUTING↗

Supercomputing and Scientific Workflows Gaps and Requirements

Over the past decade, workflows have been successfully applied to a number of scientific domains with great success. Workflow engines are now commonly used across scientific disciplines to automate mundane tasks, collect provenance, and orchestrate complex processes. However, workflows have not yet made significant strides managing fine-grain, concurrent tasks directly on supercomputing platforms. As scientific computing becomes an increasingly important discovery method and high performance computing environments become more complex, addressing this gap becomes critical. Using a simple use case as motivation, this paper describes the current barriers to using workflow engines in a supercomputing environment and outlines the new capabilities that must be provided if workflows are to be successfully applied in this context.

99 GENERAL AND MISCELLANEOUS↗

cuAlign: Scalable Network Alignment on GPU Accelerators

Given two graphs, the objective of network alignment is to find the best one-to-one mapping of vertices in one graph (??) to vertices in the other (??), such that the number of overlaps is maximized. We say that edges(??, ??) ???and(??', ??') ??? are overlapped if ?? is mapped to ??' and ?? is mapped to??'. Network alignment is an important optimization problem with several applications in bioinformatics, computer vision and ontology matching. Since it is an NP-hard problem, efficient heuristics and scalable implementations are necessary. In this work, we introduce a new framework that combines the concepts of intra-network proximity using vertex embedding,Belief Propagation (BP) and approximate weighted matching, and provides qualitative improvements up to22%over state-of-the-art approaches. We also provide scalable implementations on GPU accelerators, demonstrating up to19×speedup for Belief Propagation and 3× speedup for approximate weighted matching relative to previous multithreaded implementation. A combination of combinatorial and algebraic kernels within the network alignment algorithm poses significant hurdles for parallelization. Load imbalance and irregular DRAM traffic limit achievable performance on GPUs. Our novel approach identifies and exploits unique structural proper-ties of the BP-based algorithm and employs code fusion to reduce data movement between different steps of the algorithm. Using a diverse set of inputs, we demonstrate qualitative improvements of our algorithms, and performance gains of our GPU-accelerated implementation. We believe that our work will enable algorithmic improvements and practical applications of network alignment.

Xiang, Lizhi↗