Engineering Papers⌕ Search

SEARCH · Engineering Papers

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 73 records · Page 4

Tri-Level Linear Programming Model for Automatic Load Shedding Using Spectral Clustering

Traditional load shedding schemes can be inadequate in grids with high renewable penetration, leading to unstable events and unnecessary grid islanding. Although for both manual and automatic operating modes load shedding areas have been predefined by grid operators, they have remained fixed, and may be sub-optimal due to dynamic operating conditions. In this work, a distributed tri-level linear programming model for automatic load shedding to avoid system islanding is presented. Preventing islanding is preferred because it reduces the need for additional load shedding besides the disconnection of transmission lines between islands. This is crucial as maintaining the local generation-demand balance is necessary to preserve frequency stability. Furthermore, uneven distribution of generation resources among islands can lead to increased load shedding, causing economic and reliability challenges. This issue is further compounded in modern power systems heavily dependent on non-dispatchable resources like wind and solar. The upper-level model uses complex power flow measurements to determine the system areas to shed load depending on actual operating conditions using a spectral clustering approach. The mid-level model estimates the area system state, while the lower-level model determines the locations and load values to be shed. The solution is practical and promising for real-world applications.

Baquedano-Aguilar, Mario D.↗

MiniApps derived from production HPC applications using multiple programing models

Here, we have developed a set of reduced, proxy applications (“MiniApps”) based on large-scale application codes supported at the Oak Ridge Leadership Computing Facility (OLCF). The MiniApps are designed to encapsulate the details of the most important (i.e. the most time-consuming and/or unique) facets of the applications that run in production mode on the OLCF. In each case, we have produced or plan to produce individual versions of the MiniApps using different specific programing models (e.g., OpenACC, CUDA, OpenMP). We describe some of our initial observations regarding these different implementations along with estimates of how closely the MiniApps track the actual performance characteristics (in particular, the overall scalability) of the large-scale applications from which they are derived.

97 MATHEMATICS AND COMPUTING↗

Porting ATLAS Fast Calorimeter Simulation to GPUs with Performance Portable Programming Models

FastCaloSim is a parameterized simulation of the particle energy response and of the energy distribution in the ATLAS calorimeter. It is a relatively small and self-contained package with massive inherent parallelism and captures the essence of GPU offloading via important operations like data transfer, memory initialization, floating point operations, and reduction. It was identified by the High Energy Physics Center for Computational Excellence project as a good testbed for evaluating the performance and ease of portability of programming models. In this paper, we will discuss the results of our evaluation of the porting process to Kokkos, SYCL, Alpaka, OpenMP and std::par (nvc++), and compare performance on NVIDIA, AMD and Intel GPUs, as well as multicore CPUs.

97 MATHEMATICS AND COMPUTING↗

Developing MiniApps on Modern Platforms Using Multiple Programming Models, In: 2015 IEEE International Conference on Cluster Computing

We have developed a set of reduced, proxy applications ("MiniApps") based on large-scale application codes supported at the Oak Ridge Leadership Computing Facility (OLCF). The MiniApps are designed to encapsulate the details of the most important (i.e. the most time-consuming and/or unique) facets of the applications that run in production mode on the OLCF. In each case, we have produced or plan to produce individual versions of the MiniApps using different specific programming models (e.g., OpenACC, CUDA, OpenMP). We describe some of our initial observations regarding these different implementations along with estimates of how closely the MiniApps track the actual performance characteristics (in particular, the overall scalability) of the large-scale applications from which they are derived.

Computer Science↗

Fault Tolerance Assistant (FTA): An Exception Handling Programming Model for MPI Applications

Future high-performance computing systems may face frequent failures with their rapid increase in scale and complexity. Resilience to faults has become a major challenge for large-scale applications running on supercomputers, which demands fault tolerance support for prevalent MPI applications. Among failure scenarios, process failures are one of the most severe issues as they usually lead to termination of applications. However, the widely used MPI implementations do not provide mechanisms for fault tolerance. We propose FTA-MPI (Fault Tolerance Assistant MPI), a programming model that provides support for failure detection, failure notification and recovery. Specifically, FTA-MPI exploits a try/catch model that enables failure localization and transparent recovery of process failures in MPI applications. We demonstrate FTA-MPI with synthetic applications and a molecular dynamics code CoMD, and show that FTA-MPI provides high programmability for users and enables convenient and flexible recovery of process failures.

97 MATHEMATICS AND COMPUTING↗

OpenSHMEM-UCX : Evaluation of UCX for implementing OpenSHMEM Programming Model

The OpenSHMEM reference implementation was developed towards the goal of developing an open source and high-performing Open- SHMEM implementation. To achieve portability and performance across various networks, the OpenSHMEM reference implementation uses GAS- Net and UCCS for network operations. Recently, new network layers have emerged with the promise of providing high-performance, scalabil- ity, and portability for HPC applications. In this paper, we implement the OpenSHMEM reference implementation to use the UCX framework for network operations. Then, we evaluate its performance and scalabil- ity on Cray XK systems to understand UCX s suitability for developing the OpenSHMEM programming model. Further, we develop a bench- mark called SHOMS for evaluating the OpenSHMEM implementation. Our experimental results show that OpenSHMEM-UCX outperforms the vendor supplied OpenSHMEM implementation in most cases on the Cray XK system by up to 40% with respect to message rate and up to 70% for the execution of application kernels.

Baker, Matthew B↗

OpenSHMEM-UCX: Evaluation of UCX for Implementing OpenSHMEM Programming Model, In: OpenSHMEM 2016: OpenSHMEM and Related Technologies. Enhancing OpenSHMEM for Hybrid Environments

The OpenSHMEM reference implementation was developed towards the goal of developing an open source and high-performing OpenSHMEM implementation. To achieve portability and performance across various networks, the OpenSHMEM reference implementation uses GASNet and UCCS for network operations. Recently, new network layers have emerged with the promise of providing high-performance, scalability, and portability for HPC applications. In this paper, we implement the OpenSHMEM reference implementation to use the UCX framework for network operations. Then, we evaluate its performance and scalability on Cray XK systems to understand UCX’s suitability for developing the OpenSHMEM programming model. Further, we develop a benchmark called SHOMS for evaluating the OpenSHMEM implementation. Our experimental results show that OpenSHMEM-UCX outperforms the vendor supplied OpenSHMEM implementation in most cases on the Cray XK system by up to 40% with respect to message rate and up to 70% for the execution of application kernels.

Computer Science↗

OpenSHMEM Reference Implementation using UCCS-uGNI Transport Layer. In: PGAS '14 Proceedings of the 8th International Conference on Partitioned Global Address Space Programming Models, Article No. 18

OpenSHMEM is a library interface implementation and specification that enables the implementation of the Partitioned Global Address Space (PGAS) model. It exports modern RDMA network functionality and communication semantics to applications very efficiently. There are many closed source implementations of OpenSHMEM for modern RDMA interconnects such as InfiniBand and Cray's Gemini and Aries. Given the important role that Cray systems play in HPC, in this paper, we present an open source implementation of OpenSHMEM for Cray XE/XK/XC systems. To implement OpenSHMEM, we use the uGNI interface. uGNI is a generic interface that is designed for multiple programming models. The interface fits well the goal of UCCS. Having OpenSHMEM with UCCS-uGNI allows usage of the same implementation over multiple interconnects. This also translates into many advantages that come with common code such as resource sharing, increasing productivity because of less code maintenance, etc. Preliminary results show that OpenSHMEM-UCCS performs comparable to state-of-the-art Cray SHMEM for Put, Get, and AMO operations.

Janjusic, Tomislav↗

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 ↗

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 for these compute accelerators 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.

47 OTHER INSTRUMENTATION↗

Bi-Level Linear Programming Model for Automatic Load Shedding: A Distributed Wide-Area Measurement System-based Solution

Load shedding is currently implemented as a two-step based approach. In the first step, manual load shedding is taken place, were system operators, using estimates, inform distribution utilities of predicted stressful conditions. Information provided include the potential use of energy reserves, as well as load shedding amount. In a second step, automatic load shedding is done. The latter is realized using protection relays. While considering frequency variation, pre-defined values of load to be shed and correspondent number of stages for such to be realized are transformed into relay settings. Under-frequency protection relays use only local measurements towards decision making, thus operate in a decentralized architecture. Decision making is done in milliseconds plus breaker time. While this approach has provided much system reliability, considering the new smart grid paradigm, where system dynamics are much faster due to increasing renewable resources penetration, in some operating conditions it will generate sub-optimal solutions, such as islanding. Phasor measurement units provide a source of information which can be useful for this problem. Centralized architecture-based solutions for automatic load shedding, as present in the state-of-the-art, require though total processing times which are not acceptable for real-life implementation. In this work, considering the above, a bi-level linear programming model is presented. The model is implemented considering a distributed architecture while leveraging phasor measurement units data. The upper-level model estimates the current system state. Results of this model are embedded in a lower-level model, which decision variables are the location and load value to be shed. Easy-to-implement model, built-on the classic weighted least squares solution, highlight potential aspects towards real-life applications.

Bretas, Arturo Suman↗

Cross-scale Efficient Tensor Contractions for Coupled Cluster Computations Through Multiple Programming Model Backends

Coupled-cluster methods provide highly accurate models of molecular structure by explicit numerical calculation of tensors representing the correlation between electrons. These calculations are dominated by a sequence of tensor contractions, motivating the development of numerical libraries for such operations. While based on matrix-matrix multiplication, these libraries are specialized to exploit symmetries in the molecular structure and in electronic interactions, and thus reduce the size of the tensor representation and the complexity of contractions. The resulting algorithms are irregular and their parallelization has been previously achieved via the use of dynamic scheduling or specialized data decompositions. We introduce our efforts to extend the Libtensor framework to work in the distributed memory environment in a scalable and energy efficient manner. We achieve up to 240 speedup compared with the best optimized shared memory implementation. We attain scalability to hundreds of thousands of compute cores on three distributed-memory architectures, (Cray XC30&XC40, BlueGene/Q), and on a heterogeneous GPU-CPU system (Cray XK7). As the bottlenecks shift from being compute-bound DGEMM's to communication-bound collectives as the size of the molecular system scales, we adopt two radically different parallelization approaches for handling load-imbalance. Nevertheless, we preserve a uni ed interface to both programming models to maintain the productivity of computational quantum chemists.

74 ATOMIC AND MOLECULAR PHYSICS↗

GASNet-EX Memory Kinds: Support for Device Memory in PGAS Programming Models

There is an emerging need for adaptive, lightweight communication in irregular HPC applications at exascale, where GPU accelerators provide the majority of available compute cycles. To address this need, Lawrence Berkeley National Lab is developing a programming system to support distributed-memory HPC application development using the Partitioned Global Address Space (PGAS) model. This work includes two major components: UPC++ and GASNet-EX. UPC++ is a C++ template library providing Remote Memory Access (RMA) and Remote Procedure Call (RPC) communication interfaces. GASNet-EX is a portable, high-performance communication middleware library, used by the implementations of UPC++ and many other PGAS programming models. We describe recent advances in GASNet-EX to efficiently implement zero-copy Remote Memory Access (RMA) communication to and from memory on accelerator devices such as GPUs. We demonstrate performance improvements via benchmark results from UPC++ (on Summit) and the Legion programming system (on DGX-1), both using GASNet-EX for communication.

Hargrove, Paul H↗

State and Alternative Fuel Provider Fleet Program, Model Year 2023 Annual Report

The Energy Policy Act of 1992 (EPAct) was enacted in part to reduce the nation's dependence on imported petroleum. Provisions of EPAct require certain fleets to acquire alternative fuel vehicles (AFVs). The U.S. Department of Energy administers these requirements through its State and Alternative Fuel Provider Fleet Program, Federal Fleet Requirements, and Alternative Fuel Designation Authority. This report summarizes activities under the program during model year 2023.

33 ADVANCED PROPULSION SYSTEMS↗

Optimizing Biorefinery Design and Operations via Linear Programming Models

The ability to assess and optimize economics of biomass resource utilization for the production of fuels, chemicals and power is essential for the ultimate success of a bioenergy industry. The team of authors, consisting of members from the National Renewable Energy Laboratory (NREL) and the Idaho National Laboratory (INL), has developed simple biorefinery linear programming (LP) models to enable the optimization of theoretical or existing biorefineries. The goal of this analysis is to demonstrate how such models can benefit the developing biorefining industry. It focuses on a theoretical multi-pathway, thermochemical biorefinery configuration and demonstrates how the biorefinery can use LP models for operations planning and optimization in comparable ways to the petroleum refining industry. Using LP modeling tools developed under U.S. Department of Energy's Bioenergy Technologies Office (DOE-BETO) funded efforts, the authors investigate optimization challenges for the theoretical biorefineries such as (1) optimal feedstock slate based on available biomass and prices, (2) breakeven price analysis for available feedstocks, (3) impact analysis for changes in feedstock costs and product prices, (4) optimal biorefinery operations during unit shutdowns / turnarounds, and (5) incentives for increased processing capacity. These biorefinery examples are comparable to crude oil purchasing and operational optimization studies that petroleum refiners perform routinely using LPs and other optimization models. It is important to note that the analyses presented in this article are strictly theoretical and they are not based on current energy market prices. The pricing structure assigned for this demonstrative analysis is consistent with $4 per gallon gasoline, which clearly assumes an economic environment that would favor the construction and operation of biorefineries. The analysis approach and examples provide valuable insights into the usefulness of analysis tools for maximizing the potential benefits of biomass utilization for production of fuels, chemicals and power.

09 BIOMASS FUELS↗

Mixed-integer programming models for optimal constellation scheduling given cloud cover uncertainty

We introduce the problem of scheduling observations on a constellation of remote sensors, to maximize the aggregate quality of the collections obtained. While automated tools exist to schedule remote sensors, they are often based on heuristic scheduling techniques, which typically fail to provide bounds on the quality of the resultant schedules. To address this issue, we first introduce a novel deterministic mixed-integer programming (MIP) model for scheduling a constellation of one to n satellites, which relies on extensive pre-computations associated with orbital propagators and sensor collection simulators to mitigate model size and complexity. Our MIP model captures realistic and complex constellation-target geometries, with solutions providing optimality guarantees. We then extend our base deterministic MIP model to obtain two-stage and three-stage stochastic MIP models that proactively schedule to maximize expected collection quality across a set of scenarios representing cloud cover uncertainty. Our experimental conclusions on instances of one and two satellites demonstrate that our stochastic MIP models yield significantly improved collection quality relative to our base deterministic MIP model. We further demonstrate that commercial off-the-shelf MIP solvers can produce provably optimal or near-optimal schedules from these models in time frames suitable for sensor operations.

47 OTHER INSTRUMENTATION↗

An air quality index-based multistage type-2-fuzzy interval-stochastic programming model for energy and environmental systems management under multiple uncertainties

Highlights: • A multistage type-2-fuzzy interval-stochastic programming (MTIP) method is developed. • Air quality index (AQI) is introduced to manage energy and environmental systems. • AQI-MTIP model is formulated and results for Tianjin's EES are generated. • Impacts of environmental requirements on energy systems is analyzed. • Results can provide support for making effective pollutant mitigation policy. In this study, a multistage type-2-fuzzy interval-stochastic programming (MTIP) method is developed, which extends upon the existing multistage stochastic programming (MSP) by allowing uncertainties expressed as probabilistic distributions, interval values and type-2 fuzzy sets to be effectively incorporated within the optimization framework. Through coupling air quality index (AQI) with MTIP, an AQI-MTIP model is formulated for energy and environmental systems (EES) management of Tianjin. A number of scenarios based on changed AQIs are examined to analyze the impacts of environmental requirements on the city's energy system. Results indicate that (i) with the improvement of environmental requirement, utilization of clean energies (especially natural gas) is provoked markedly; (ii) PM{sub 2.5} is the primary pollutant, 64.50% of which should be reduced each period to maintain the city's air quality at a health-safe level. These findings can help decision makers adjust energy structure, make effective mitigation strategy, and gain deep insight into the relationship between energy consumption and environmental requirement.

29 ENERGY PLANNING, POLICY, AND ECONOMY↗