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 199 records · Page 11

Y-12 Nuclear Criticality Safety Program Health Model: Development, Use and Benefits

The Y-12 National Security Complex (Y-12) operates seven diverse enriched uranium processing facilities and maintains a comprehensive nuclear criticality safety (NCS) program. Given the magnitude of the hazard, the NCS program receives significant oversight. Describing the scope and health of the Y-12 NCS program to sometimes non-expert stakeholders with limited time had historically focused on recent events and “hot topics” which did not always convey sufficient context (i.e., how to differentiate between an individual performance issue and a systemic concern). Y-12 created the NCS Program Health (NCSPH) Model to provide a complete and holistic framework to quantify and communicate NCS program health. The model is constructed in a tiered fashion with the top tier broken into three (3) Tier 2 elements, fourteen (14) Tier 3 elements, and 104 Tier 4 and 5 elements. This granularity ensures every feature of the NCS Program is accounted for and stakeholders can see how these features support the collective whole. The model is used as the framework for NCS communications including program plans, reports, health surveys, and meeting agendas. The model has substantially improved stakeholder appreciation for the entirety of the NCS program and how events and assessment results factor into an overarching conclusion on NCS program health. While some details are Y-12 specific, the NCSPH model can easily be tailored for any other site with an NCS program.

12 MANAGEMENT OF RADIOACTIVE AND NON-RADIOACTIVE W↗

Economic and Environmental Analysis to Evaluate the Potential Value of Co-Optima Diesel Bioblendstocks to Petroleum Refiners

The U.S. petroleum refining sector is undergoing a period of historic transformation, catalyzed by the decarbonization of the U.S. economy. Diesel-boiling-range bioblendstocks have gained traction, owing to their superior fuel properties and environmental performance as compared to traditional petroleum fuels. This work couples refinery linear programming models with life cycle assessment to quantify the potential economic and environmental benefits, and trade-offs, of blending diesel-boiling-range bioblendstocks at petroleum refineries. Linear programming models were developed in Aspen Process Industry Modeling Systems (PIMS) for three representative petroleum refinery configurations of differing complexity. Seven diesel-boiling-range bioblendstocks: 4-butoxyheptane, 5-ethyl-4-propylnonane, soy biodiesel, sludge hydrothermal liquefaction diesel, polyoxymethylene ethers, renewable diesel, and hexyl hexanoate, were investigated to identify key fuel properties that influence refineries' economics and to track the effect of adding bioblendstocks on refinery-wide cradle-to-gate greenhouse gases (GHG) emissions. These analyses considered blending levels from 10 to 30 vol% and fuel demand projections over the period 2040 to 2050. This analysis determines that bioblendstock sulfur content and cetane number are the primary fuel attributes with the potential to provide value to refiners. Life cycle assessment results indicate that the use of diesel-boiling-range bioblendstocks can reduce cradle-to-gate refinery GHG emissions by up to ~ 40 % relative to conventional refinery operations when considering carbon uptake in the supply chain of the bioblendstock. Refinery-wide marginal GHG abatement costs range from 120 to 3,600 USD2016/metric tons carbon dioxide equivalent avoided across the scenarios evaluated. Reducing the price of bioblendstocks is identified as a key to their adoption.

ADVANCED PROPULSION SYSTEMS,BIOMASS FUELS,ENERGY P↗

Argobots: A Lightweight Low-Level Threading and Tasking Framework

In the past few decades, a number of user-level threading and tasking models have been proposed in the literature to address the shortcomings of OS-level threads, primarily with respect to cost and flexibility. Current state-of-the-art user-level threading and tasking models, however, are either too specific to applications or architectures or are not as powerful or flexible. In this paper, we present Argobots, a lightweight, low-level threading and tasking framework that is designed as a portable and performant substrate for high-level programming models or runtime systems. Argobots offers a carefully designed execution model that balances generality of functionality with providing a rich set of controls to allow specialization by the user or high-level programming model. We describe the design, implementation, and optimization of Argobots and present integrations with three example high-level models: OpenMP, MPI, and co-located I/O service. Evaluations show that (1) Argobots outperforms existing generic threading runtimes; (2) our OpenMP runtime offers more efficient interoperability capabilities than production OpenMP runtimes do; (3) when MPI interoperates with Argobots instead of Pthreads, it enjoys reduced synchronization costs and better latency hiding capabilities; and (4) I/O service with Argobots reduces interference with co-located applications, achieving performance competitive with that of the Pthreads version.

Seo, Sangmin (ORCID:0000000295159836)↗

Implementing the OpenACC Data Model

Programming accelerators today usually requires managing separate virtual and physical memories, such as allocating space in and copying data between host and device memories. The OpenACC API provides data directives and clauses to control this behavior where it is required. This paper describes how the data model is supported in current OpenACC implementations, ranging from research compilers (OpenUH and OpenARC) to a commercial compiler (the PGI OpenACC compiler). This includes implementation of the data directives and clauses, testing whether the data is already present on the device, OpenCL support, managing asynchronous data transfers and memory allocations, handling aliased data, reusing device memory, managing partially present data, and support for shared memory between host and device. Lastly, it also discusses on-going work to manage large, complex dynamic data structures.

Wolfe, Michael↗

Optimal allocation of series FACTS devices in large‐scale systems

Series flexible AC transmission systems devices, such as the variable series reactor, have the ability to continuously regulate the transmission line reactance so as to control power flow. This study presents a new approach to optimally locating such devices in the transmission network considering multiple operating states and contingencies. To investigate optimal investment, a single target year planning with three different load patterns is considered. The transmission contingencies may occur under any of the three load conditions and the coupling constraints between base case and contingencies are included. A reformulation technique transforms the original mixed integer non‐linear programming model into mixed integer linear programming model. To further relieve the computational burden and enable the planning model to be directly applied to practical large‐scale systems, a two‐phase decomposition algorithm is introduced. Detailed numerical simulation results on IEEE 118‐bus system and the Polish 2383‐bus system illustrate the efficient performance of the proposed algorithm.

Zhang, Xiaohu↗

Large language model evaluation for high–performance computing software development

We apply AI-assisted large language model (LLM) capabilities of GPT-3 targeting high-performance computing (HPC) kernels for (i) code generation, and (ii) auto-parallelization of serial code in C ++, Fortran, Python and Julia. Our scope includes the following fundamental numerical kernels: AXPY, GEMV, GEMM, SpMV, Jacobi Stencil, and CG, and language/programming models: (1) C++ (e.g., OpenMP [including offload], OpenACC, Kokkos, SyCL, CUDA, and HIP), (2) Fortran (e.g., OpenMP [including offload] and OpenACC), (3) Python (e.g., numpy, Numba, cuPy, and pyCUDA), and (4) Julia (e.g., Threads, CUDA.jl, AMDGPU.jl, and KernelAbstractions.jl). Kernel implementations are generated using GitHub Copilot capabilities powered by the GPT-based OpenAI Codex available in Visual Studio Code given simple + + prompt variants. To quantify and compare the generated results, we propose a proficiency metric around the initial 10 suggestions given for each prompt. For auto-parallelization, we use ChatGPT interactively giving simple prompts as in a dialogue with another human including simple “prompt engineering” follow ups. Results suggest that correct outputs for C++ correlate with the adoption and maturity of programming models. For example, OpenMP and CUDA score really high, whereas HIP is still lacking. We found that prompts from either a targeted language such as Fortran or the more general-purpose Python can benefit from adding language keywords, while Julia prompts perform acceptably well for its Threads and CUDA.jl programming models. Finally, we expect to provide an initial quantifiable point of reference for code generation in each programming model using a state-of-the-art LLM. Overall, understanding the convergence of LLMs, AI, and HPC is crucial due to its rapidly evolving nature and how it is redefining human-computer interactions.

97 MATHEMATICS AND COMPUTING↗

Two-stage Stochastic Generalized Disjunctive Programming (GDP) Model for Proactive Planning and Reactive Operations of Resilient Power Systems under Disruptions

In this work, we propose a Generalized Disjunctive Programming (GDP) model that optimizes both long-term capacity planning (such as the number and size of dispatchable/renewable generators, batteries, and transmission lines) and hourly operation (such as on/off schedules of dispatchable generators, power output from each generator, and power flow) to maximize power system reliability while minimizing total cost and CO2 emissions.

Cho, Seolhee↗

Parthenon—a performance portable block-structured adaptive mesh refinement framework

On the path to exascale the landscape of computer device architectures and corresponding programming models has become much more diverse. While various low-level performance portable programming models are available, support at the application level lacks behind. To address this issue, we present the performance portable block-structured adaptive mesh refinement (AMR) framework Parthenon, derived from the well-tested and widely used Athena++ astrophysical magnetohydrodynamics code, but generalized to serve as the foundation for a variety of downstream multi-physics codes. Parthenon adopts the Kokkos programming model, and provides various levels of abstractions from multidimensional variables, to packages defining and separating components, to launching of parallel compute kernels. Parthenon allocates all data in device memory to reduce data movement, supports the logical packing of variables and mesh blocks to reduce kernel launch overhead, and employs one-sided, asynchronous MPI calls to reduce communication overhead in multi-node simulations. Using a hydrodynamics miniapp, we demonstrate weak and strong scaling on various architectures including AMD and NVIDIA GPUs, Intel and AMD x86 CPUs, IBM Power9 CPUs, as well as Fujitsu A64FX CPUs. At the largest scale on Frontier (the first TOP500 exascale machine), the miniapp reaches a total of 1.7 × 10 13 zone-cycles/s on 9216 nodes (73,728 logical GPUs) at [Formula: see text] weak scaling parallel efficiency (starting from a single node). In combination with being an open, collaborative project, this makes Parthenon an ideal framework to target exascale simulations in which the downstream developers can focus on their specific application rather than on the complexity of handling massively-parallel, device-accelerated AMR.

97 MATHEMATICS AND COMPUTING↗

Human Factors Engineering Program Review Model (NUREG-0711)Revision 3: Update Methodology and Key Revisions

The U.S. Nuclear Regulatory Commission (NRC) reviews the human factors engineering (HFE) programs of applicants for nuclear power plant construction permits, operating licenses, standard design certifications, and combined operating licenses. The purpose of these safety reviews is to help ensure that personnel performance and reliability are appropriately supported. Detailed design review procedures and guidance for the evaluations is provided in three key documents: the Standard Review Plan (NUREG-0800), the HFE Program Review Model (NUREG-0711), and the Human-System Interface Design Review Guidelines (NUREG-0700). These documents were last revised in 2007, 2004 and 2002, respectively. The NRC is committed to the periodic update and improvement of the guidance to ensure that it remains a state-of-the-art design evaluation tool. To this end, the NRC is updating its guidance to stay current with recent research on human performance, advances in HFE methods and tools, and new technology being employed in plant and control room design. NUREG-0711 is the first document to be addressed. We present the methodology used to update NUREG-0711 and summarize the main changes made. Finally, we discuss the current status of the update program and the future plans.

22 GENERAL STUDIES OF NUCLEAR REACTORS↗

The RAJA Portability Layer: Overview and Status

As computer architectures become increasingly complex and diverse, application developers face difficult challenges to achieve high performance while maintaining code portability. The problem is especially acute for large ASC multiphysics codes. Efficient parallel execution often requires tuning algorithms and data access to match processor and memory system constraints. Changing compiler directives and parallel programming model constructs on thousands of individual loops in a large code is disruptive and unwieldy. RAJA is a programming approach that we have been developing at Lawrence Livermore National Laboratory to encapsulate platform-specific concerns, related to both hardware and parallel programming models. The RAJA abstraction layer simplifies porting C/C++ codes to various programming models and architectures by reducing effort and developer disruption. In this report, we motivate and describe key aspects of RAJA. We also present a preliminary assessment of RAJA based on exploration in three ASC hydrodynamics codes at LLNL, which was one part of a three-part ASC Level 2 milestone, completed in September 2014.

97 MATHEMATICS AND COMPUTING↗

Evaluating Nonuniform Reduction in HIP and SYCL on GPUs

Motivated by maturing programming models and portability for heterogeneous computing, we describe the challenges posed by hardware architectures and programming models when migrating an optimized implementation of nonuniform reduction from CUDA to HIP and SYCL. We explain the migration experience, evaluate the performance of the reduction on GPU -based computing platforms, and provide feedback on improving portability for the development of the SYCL programming model.

Jin, Zheming↗

A Locality-Based Threading Algorithm for the Configuration-Interaction Method

The Configuration Interaction (CI) method has been widely used to solve the non-relativistic many-body Schrodinger equation. One great challenge to implementing it efficiently on manycore architectures is its immense memory and data movement requirements. To address this issue, within each node, we exploit a hybrid MPI+OpenMP programming model in lieu of the traditional flat MPI programming model. Here in this paper, we develop optimizations that partition the workloads among OpenMP threads based on data locality,-which is essential in ensuring applications with complex data access patterns scale well on manycore architectures. The new algorithm scales to 256 threadson the 64-core Intel Knights Landing (KNL) manycore processor and 24 threads on dual-socket Ivy Bridge (Xeon) nodes. Compared with the original implementation, the performance has been improved by up to 7× on theKnights Landing processor and 3× on the dual-socket Ivy Bridge node.

97 MATHEMATICS AND COMPUTING↗

Dynamically Downscaled Hourly Future Weather Data with 12-km Resolution Covering Most of North America

This is an hourly future weather dataset for energy modeling applications. The dataset is primarily based on the output of a regional climate model (RCM), i.e., the Weather Research and Forecasting (WRF) model version 3.3.1. The WRF simulations are driven by the output of a general circulation model (GCM), i.e., the Community Climate System Model version 4 (CCSM4). This dataset is in the EPW format, which can be read or translated by more than 25 building energy modeling programs (e.g., EnergyPlus, ESP-r, and IESVE), energy system modeling programs (e.g., System Advisor Model (SAM)), indoor air quality analysis programs (e.g., CONTAM), and hygrothermal analysis programs (e.g., WUFI). It contains 13 weather variables, which are the Dry-Bulb Temperature, Dew Point Temperature, Relative Humidity, Atmospheric Pressure, Horizontal Infrared Radiation Intensity from Sky, Global Horizontal Irradiation, Direct Normal Irradiation, Diffuse Horizontal Irradiation, Wind Speed, Wind Direction, Sky Cover, Albedo, and Liquid Precipitation Depth. The weather data is created for two emissions scenarios: RCP4.5 and RCP8.5 and spans two 10-year time slices in the future: 2045 - 2054 and 2085 - 2094. It offers a spatial resolution of 12 km by 12 km with extensive coverage across most of North America. Due to the enormous size of the entire dataset, in the first stage of its distribution, we provide 20 years of future weather data for the centroid of each Public Use Microdata Area (PUMA), excluding Hawaii. PUMAs are non-overlapping, statistical geographic areas that partition each state or equivalent entity into geographic areas containing no fewer than 100,000 people each. The 2,378 PUMAs as a whole cover the entirety of the U.S. The weather data can be utilized alongside the large-scale energy analysis tools, ResStock and ComStock, developed by National Renewable Energy Laboratory, whose smallest resolution is at the PUMA scale. The data for RCP4.5 is still being processed and will be published soon.

Array↗

QCOR; A Language Extension Specification for the Heterogeneous Quantum-Classical Model of Computation

Quantum computing (QC) is an emerging computational paradigm that leverages the laws of quantum mechanics to perform elementary logic operations. Existing programming models for QC were designed with fault-tolerant hardware in mind, envisioning stand-alone applications. However, the susceptibility of near-term quantum computers to noise limits their stand-alone utility. To better leverage limited computational strengths of noisy quantum devices, hybrid algorithms have been suggested whereby quantum computers are used in tandem with their classical counterparts in a heterogeneous fashion. This modus operandi calls out for a programming model and a high-level programming language that natively and seamlessly supports heterogeneous quantum-classical hardware architectures in a single-source-code paradigm. Motivated by the lack of such a model, we introduce a language extension specification, called QCOR, which enables single-source quantum-classical programming. Programs written using the QCOR library–based language extensions can be compiled to produce functional hybrid binary executables. After defining QCOR’s programming model, memory model, and execution model, we discuss how QCOR enables variational, iterative, and feed-forward QC. Additionally, QCOR approaches quantum-classical computation in a hardware-agnostic heterogeneous fashion and strives to build on best practices of high-performance computing. The high level of abstraction in the language extension is intended to accelerate the adoption of QC by researchers familiar with classical high-performance computing.

97 MATHEMATICS AND COMPUTING↗

Exploring Asynchronous Many-Task Runtime Systems toward Extreme Scales

Major exascale computing reports indicate a number of software challenges to meet the dramatic change of system architectures in near future. While several-orders-of-magnitude increase in parallelism is the most commonly cited of those, hurdles also include performance heterogeneity of compute nodes across the system, increased imbalance between computational capacity and I/O capabilities, frequent system interrupts, and complex hardware architectures. Asynchronous task-parallel programming models show a great promise in addressing these issues, but are not yet fully understood nor developed su ciently for computational science and engineering application codes. We address these knowledge gaps through quantitative and qualitative exploration of leading candidate solutions in the context of engineering applications at Sandia. In this poster, we evaluate MiniAero code ported to three leading candidate programming models (Charm++, Legion and UINTAH) to examine the feasibility of these models that permits insertion of new programming model elements into an existing code base.

97 MATHEMATICS AND COMPUTING↗

A Study of Performance Portability of Low-bit Fused Matrix-Vector Multiplication Kernels in SYCL

Understanding the causes of performance gaps between a portable programming model and a vendor-specific programming model is important for improving performance portability. This paper studies performance portability of low-bit fused general matrix-vector multiplication kernels in SYCL on vendors’ graphics processing units (GPUs). This work introduces the use case, explains the kernel implementations in detail, evaluates the performance of the CUDA, HIP, and SYCL kernels on datacenter, desktop, and laptop GPUs, and investigates the causes of performance gaps. The results show that loop unrolling, kernel dispatch overhead, and sum reduction contribute to the gaps.

Jin, Zheming [ORNL] (ORCID:000000027197780X)↗

Harnessing billions of tasks for a scalable portable hydrodynamic simulation of the merger of two stars

We propose a highly scalable demonstration of a portable asynchronous many-task programming model and runtime system applied to a grid-based adaptive mesh refinement hydrodynamic simulation of a double white dwarf merger with 14 levels of refinement that spans 17 orders of magnitude in astrophysical densities. The code uses the portable C++ parallel programming model that is embodied in the HPX library and being incorporated into the ISO C++ standard. The model reflects a significant shift from existing bulk synchronous parallel programming models under consideration for exascale systems. Through the use of the Futurization technique, seemingly sequential code is transformed into wait-free asynchronous tasks. We demonstrate the potential of our model by showing results from strong scaling runs on National Energy Research Scientific Computing Center’s Cori system (658,784 Intel Knight’s Landing cores) that achieve a parallel efficiency of 96.8% using billions of asynchronous tasks.

79 ASTRONOMY AND ASTROPHYSICS↗