Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “sequential”

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 1,261 records · Page 70

Scalable Pattern Matching in Metadata Graphs via Constraint Checking

Pattern matching is a fundamental tool for answering complex graph queries. Unfortunately, existing solutions have limited capabilities: They do not scale to process large graphs and/or support only a restricted set of search templates or usage scenarios. Moreover, the algorithms at the core of the existing techniques are not suitable for today’s graph processing infrastructures relying on horizontal scalability and shared-nothing clusters, as most of these algorithms are inherently sequential and difficult to parallelize. In this article we present an algorithmic pipeline that bases pattern matching on constraint checking. The key intuition is that each vertex and edge participating in a match has to meet a set of constraints implicitly specified by the search template. These constraints can be verified independently and typically are less expensive to compute than searching the full template. The pipeline we propose generates these constraints and iterates over them to eliminate all the vertices and edges that do not participate in any match, thus reducing the background graph to a subgraph that is the union of all template matches—the complete set of all vertices and edges that participate in at least one match. Additional analysis can be performed on this annotated, reduced graph, such as full match enumeration, match counting, or computing vertex/edge centrality. Furthermore, a vertex-centric formulation for constraint checking algorithms exists, and this makes it possible to harness existing high-performance, vertex-centric graph processing frameworks. This technique (i) enables highly scalable pattern matching in metadata (labeled) graphs; (ii) supports arbitrary patterns with 100% precision; (iii) enables tradeoffs between precision and time-to-solution, while always selects all vertices and edges that participate in matches, thus offering 100% recall; and (iv) supports a set of popular data analytics scenarios. We implement our approach on top of HavoqGT, an open-source asynchronous graph processing framework, and demonstrate its advantages through strong and weak scaling experiments on massive scale real-world (up to 257 billion edges) and synthetic (up to 4.4 trillion edges) labeled graphs, respectively, and at scales (1,024 nodes / 36,864 cores), orders of magnitude larger than used in the past for similar problems. This article serves two purposes: First, it synthesises the knowledge accumulated during a long-term project. Second, it presents new system features, usage scenarios, optimizations, and comparisons with related work that strengthen the confidence that pattern matching based on iterative pruning via constraint checking is an effective and scalable approach in practice. The new contributions include the following: (i) We demonstrate the ability of the constraint checking approach to efficiently support two additional search scenarios that often emerge in practice, interactive incremental search and exploratory search. (ii) We empirically compare our solution with two additional state-of-the-art systems, Arabsque and TriAD. (iii) We show the ability of our solution to accommodate a more diverse range of datasets with varying properties, e.g., scale, skewness, label distribution, and match frequency. (iv) We introduce or extend a number of system features (e.g., work aggregation, load balancing, and the ability to cap the generated traffic) and design optimizations and demonstrate their advantages with respect to improving performance and scalability. (v) We present bottleneck analysis and insights into artifacts that influence performance. (vi) We present a theoretical complexity argument that motivates the performance gains we observe.

97 MATHEMATICS AND COMPUTING↗

PAGANI: a parallel adaptive GPU algorithm for numerical integration

We present a new adaptive parallel algorithm for the challenging problem of multi-dimensional numerical integration on massively parallel architectures. Adaptive algorithms have demonstrated the best performance, but efficient many-core utilization is difficult to achieve because the adaptive work-load can vary greatly across the integration space and is impossible to predict a priori. Existing parallel algorithms utilize sequential computations on independent processors, which results in bottlenecks due to the need for data redistribution and processor synchronization. Our algorithm employs a high-throughput approach in which all existing sub-regions are processed and sub-divided in parallel. Repeated sub-region classification and filtering improves upon a brute-force approach and allows the algorithm to make efficient use of computation and memory resources. A CUDA implementation shows orders of magnitude speedup over the fastest open-source CPU method and extends the achievable accuracy for difficult integrands. Our algorithm typically outperforms other existing deterministic parallel methods.

Sakiotis, Ioannis↗

Source-to-Source Automatic Differentiation of OpenMP Parallel Loops

This article presents our work toward correct and efficient automatic differentiation of OpenMP parallel worksharing loops in forward and reverse mode. Automatic differentiation is a method to obtain gradients of numerical programs, which are crucial in optimization, uncertainty quantification, and machine learning. The computational cost to compute gradients is a common bottleneck in practice. For applications that are parallelized for multicore CPUs or GPUs using OpenMP, one also wishes to compute the gradients in parallel. Here, we propose a framework to reason about the correctness of the generated derivative code, from which we justify our OpenMP extension to the differentiation model. We implement this model in the automatic differentiation tool Tapenade and present test cases that are differentiated following our extended differentiation procedure. Performance of the generated derivative programs in forward and reverse mode is better than sequential, although our reverse mode often scales worse than the input programs.

97 MATHEMATICS AND COMPUTING↗

Parallel Memory-Independent Communication Bounds for SYRK

In this paper, we focus on the parallel communication cost of multiplying a matrix with its transpose, known as a symmetric rank-k update (SYRK). SYRK requires half the computation of general matrix multiplication because of the symmetry of the output matrix. Recent work (Beaumont et al., SPAA '22) has demonstrated that the sequential I/O complexity of SYRK is also a constant factor smaller than that of general matrix multiplication. Inspired by this progress, we establish memory-independent parallel communication lower bounds for SYRK with smaller constants than general matrix multiplication, and we show that these constants are tight by presenting communication-optimal algorithms. The crux of the lower bound proof relies on extending a key geometric inequality to symmetric computations and analytically solving a constrained nonlinear optimization problem. Here, the optimal algorithms use a triangular blocking scheme for parallel distribution of the symmetric output matrix and corresponding computation.

Communication costs↗

Shifting Layer Heights for Closed-Loop Contours in Additive Manufacturing

Traditional slicing for 3D printing involves a planar cross-sectioning process to create layers. These layers are stacked one on top of the next representing a butt-joint, which is typically the weakest direction for loading a 3D printed part. Because the layers are printed sequentially, no material or reinforcement connects from one layer to the next. This clean layer line between layers is easy to break or separate. To fix this, the authors have implemented a new approach to shift the height of every other closed-loop contour toolpath such that a clean layer line no longer exists. This bead shifting approach involves moving every other contour by half a layer height, after the cross-sectioning step, so that a straight line cannot be drawn between layers. To maintain the original object geometry, a half height layer is printed for the first and last layer to create a flat top and bottom surface. This functionality has been implemented and tested as part of ORNL Slicer 2, an open-source toolpathing software package.

Roschli, Alex↗

Communication Lower Bounds and Optimal Algorithms for Symmetric Matrix Computations

In this article, we focus on the communication costs of three symmetric matrix computations: (i) multiplying a matrix with its transpose, known as a symmetric rank-k update (SYRK) (ii) adding the result of the multiplication of a matrix with the transpose of another matrix and the transpose of that result, known as a symmetric rank-2k update (SYR2K) (iii) performing matrix multiplication with a symmetric input matrix (SYMM). All three computations appear in the Level 3 Basic Linear Algebra Subroutines (BLAS) and have wide use in applications involving symmetric matrices. We establish communication lower bounds for these kernels using sequential and distributed-memory parallel computational models, and we show that our bounds are tight by presenting communication-optimal algorithms for each setting. Our lower bound proofs rely on applying a geometric inequality for symmetric computations and analytically solving constrained nonlinear optimization problems. As a result, the symmetric matrix and its corresponding computations are accessed and performed according to a triangular block partitioning scheme in the optimal algorithms.

Al Daas, Hussam [Rutherford Appleton Laboratory, D↗

Data Assimilation for Robust UQ Within Agent-Based Simulation on HPC Systems

Agent-based simulation provides a powerful tool for in silico system modeling. However, these simulations do not provide built-in methods for uncertainty quantification (UQ). Within these types of models a typical approach to UQ is to run multiple realizations of the model then compute aggregate statistics. This approach is limited due to the compute time required for a solution. When faced with an emerging biothreat, public health decisions need to be made quickly and solutions for integrating near real-time data with analytic tools are needed. We propose an integrated Bayesian UQ framework for agent-based models based on sequential Monte Carlo sampling. Given streaming or static data about the evolution of an emerging pathogen this Bayesian framework provides a distribution over the parameters governing the spread of a disease through a population. These estimates of the spread of a disease may be provided to public health agencies seeking to abate the spread. By coupling agent-based simulations with Bayesian modeling in a data assimilation, our proposed framework provides a powerful tool for modeling dynamical systems in silico. We propose a method which reduces model error and provides a range of realistic possible outcomes. Moreover, our method addresses two primary limitations of ABMs: the lack of UQ and an inability to assimilate data. Our proposed framework combines the flexibility of an agent-based model with UQ provided by the Bayesian paradigm in a workflow which scales well to HPC systems. We provide algorithmic details and results on a simulated outbreak with both static and streaming data.

Spannaus, Adam [ORNL] (ORCID:0000000225213657)↗

ChatMPI: LLM-Driven MPI Code Generation for HPC Workloads

The Message Passing Interface (MPI) standard plays a crucial role in enabling scientific applications for parallel computing and is an essential component in high-performance computing (HPC). However, implementing MPI code manually—especially applying a proper domain decomposition and communication pattern—is a challenging and error-prone task. We present ChatMPI, an AI assistant for MPI parallelization of sequential C codes. In our analysis, we focus on testing six essential HPC workloads, which are based on Basic Linear Algebra Subprograms levels 1, 2, and 3 as well as sparse, stencil, and iterative operations. We analyze the process of creating ChatMPI by using the ChatHPC library. This lightweight large language model (LLM)–based infrastructure enables HPC experts to efficiently create and supervise trustworthy AI capabilities for critical HPC software tasks. We study the data required for training (fine-tuning) ChatMPI to generate parallel codes that not only use MPI syntax correctly but also apply HPC techniques to reduce memory communication and maximize performance by using proper work decomposition. With a relatively small training dataset composed of a few dozen prompts and fewer than 15 minutes of fine-tuning on one node equipped with two NVIDIA H100 GPUs, ChatMPI elevates trustworthiness for MPI code generation of current LLMs (e.g., Code Llama, ChatGPT-4o and ChatGPT 5). Additionally, we evaluate the performance of the MPI codes generated by ChatMPI in comparison with the ones generated by ChatGPT-4o and ChatGPT-5. The codes generated by ChatMPI provide up to a 4 × boost in performance by using better problem decomposition, communication patterns, and HPC techniques (e.g., communication avoiding).

Valero Lara, Pedro [ORNL] (ORCID:0000000214794310)↗

Social Evolution and Cheating in Plant Pathogens

Plant pathogens are a critical component of the microbiome that exist as populations undergoing ecological and evolutionary processes within their host. Many aspects of virulence rely on social interactions mediated through multiple forms of public goods, including quorum-sensing signals, exoenzymes, and effectors. Virulence and disease progression involve life-history decisions that have social implications with large effects on both host and microbe fitness, such as the timing of key transitions. Considering the molecular basis of sequential stages of plant–pathogen interactions highlights many opportunities for pathogens to cheat, and there is evidence for ample variation in virulence. Case studies reveal systems where cheating has been demonstrated and others where it is likely occurring. Harnessing the social interactions of pathogens, along with leveraging novel sensing and -omics technologies to understand microbial fitness in the field, will enable us to better manage plant microbiomes in the interest of plant health.

Plant Sciences↗

Temperature-Swing Synthesis of Large-Size Single-Crystal LiNi 0.6 Mn 0.2 Co 0.2 O 2 Cathode Materials

Single-crystal lithium-nickel-manganese-cobalt-oxide (SC-NMC) has recently emerged as a promising battery cathode material due to its outstanding cycle performance and mechanical stability over the tradional polycrystalline NMC. It is favorable to further increase the grain size of SC-NMC particles to achieve a higher volumetric energy density and minimize surface-related degradations. However, the preparation of large-size yet high performance SC-NMC particles faces a challenge in choosing a suitable temperature for sintering. High temperature promotes grain growth but induces cation mixing that negatively impacts the electrochemical performance. Here we report a temperature-swing sintering (TSS) strategy with two isothermal stages that fulfils the needs for grain growth and structural ordering sequentially. A high-temperature sintering is first used for a short period of time to increase grain size and then the reaction temperature is lowered and kept constant for a longer period of time to improve structural ordering and complete the lithiation process. SC-LiNi 0.6 Mn 0.2 Co 0.2 O 2 materials prepared via TSS exhibit large grain size (~4 μm), a low degree of cation mixing (~0.9%), and outperform the control samples prepared by the conventional sintering method. Furthermore, this work highlights the importance of understanding the process-structure-property relationships and may guide the synthesis of other SC Ni-rich cathode materials.

25 ENERGY STORAGE↗

Electrochemical Separation of Ag 2 S and Cu 2 S from Molten Sulfide Electrolyte

The production of precious metals from Cu-rich sources such as ore products or secondary sources is slow and complex largely due to limited solubility in aqueous electrolytes. This results in sequential processing with various electrolytes and chemistries, where first Cu is electrorefined, followed by Ag, followed by Au and the platinum group metals. These are separate processes, often conducted in separate electrorefining and electrowinning facilities. The chemical properties of molten sulfides, and their ability to operate at a temperature where liquid metal cathodes are used, suggest the possibility of an alternative, streamlined processing route for Cu and precious metals. Unfortunately, little thermodynamic or electrochemical information is available regarding the behavior of Cu and precious metal sulfides in molten sulfide electrolytes. Herein, the relative activity of the Cu 2 S-Ag 2 S pseudobinary dissolved in a BaS-La 2 S 3 supporting electrolyte is measured at 1523 K. It was found that the supporting electrolyte favors mixing with Ag 2 S over Cu 2 S. Molten sulfide electrolysis of Cu and Ag was conducted, with results in good agreement with the thermodynamic model. It is found that the Ag-Cu cathode chemistry will influence the electrochemical selectivity in the Ag-Cu-Ba-La-S system.

25 ENERGY STORAGE↗

Plasticizer-Free Gradient-Crosslinked Polyurethane Electrolyte for Room-Temperature Solid-State Lithium Batteries

Polymer-based solid-state electrolytes are promising for next-generation lithium metal batteries, yet their limited ionic conductivity and mechanical stability at ambient conditions remain key challenges. Herein, we report a novel gradient crosslinked polymer electrolyte (PU/PUA/PU) synthesized via a sequential in situ UV-curing process that integrates a mechanically robust polyurethane acrylate (PUA) core with soft linear polyurethane (PU) interfaces. This all-solid membrane operates without any liquid plasticizer and the interfacial PU layers ensure low interfacial resistance and intimate electrode contact, while the PUA core provides enhanced dimensional stability and dendrite suppression. As a result, the gradient electrolyte delivers an impressive ∼2.6 × 10 −4 S cm −1 ionic conductivity at 25 °C (two orders of magnitude higher than conventional PEO) and remains electrochemically stable >5 V (vs Li + /Li). Structural analysis confirms the formation of a well-defined crosslinked network with suppressed crystallinity and expanded interchain spacing. Electrochemical impedance spectroscopy (EIS) and linear sweep voltammetry (LSV) further validate these properties. When applied in a Li||NMC811 cell, the PU/PUA/PU electrolyte delivers stable cycling with high capacity at both 60 °C and 25 °C, demonstrating its potential for room-temperature solid-state battery applications without reliance on plasticizers or heating. In conclusion, this gradient design offers a practical path toward ambient-condition operation of solid-state lithium batteries, providing a paradigm for overcoming the traditional trade-off between ionic conductivity and mechanical robustness.

25 ENERGY STORAGE↗

Quantitative Evaluation of Top Coal Caving Methods at the Working Face of Extra‐Thick Coal Seams Based on the Random Medium Theory

Adopting an effective top coal caving method is the key to enhancing coal recovery and reducing gangue content for the fully mechanized top coal caving working face with extra‐thick coal seams. In this study, the movement of coal particles generated during top coal caving is considered to follow a normal distribution. Then, the caving body and coal‐rock settlement along the working face during the caving process are studied based on both the random media theory and probability theory. Accordingly, the optimal caving interval and caving sequences are determined, and a novel interval symmetrical coal caving method is proposed. The proposed method is systematically verified with results from physical similarity tests, and different caving methods are assessed by field tests. The results show the following: (1) The coal‐rock settlement and the caving body demonstrate clear axial symmetrical features along the working face; the size of the caving body increases as the caving height grows and its shape turns progressively from semicircular to semielliptical with a lower foot of the coal‐rock settlement. (2) The caving interval is derived using the sum of the radii of the coal‐rock settlement curves formed by the two largest caving bodies. (3) The symmetrical caving approach provides a symmetrical space for the subsequent movement of the broken top coal, which enables a uniform development of the caving body. (4) Compared with the traditional sequential coal caving method with the same number of supports, the interval symmetrical caving method results in a 21.7% of coal production increase, 17% caving rate promotion, and a shortened caving time by 23.4%. (5) The interval symmetrical caving method is found to improve the controllability of the caving process at the fully mechanized top coal caving working face. In general, this work presents a theoretical approach to select the optimal caving methods for the fully mechanized caving working face in extra‐thick coal seams for an improved production efficiency of the work face. The results of this study can also provide theoretical significance and referencing value for quantitative analyses of the coal caving methods for work faces with similar geological conditions.

Jiulin, Shi (ORCID:0000000155819062)↗

A Framework for the Analysis of Compiler Optimizations

Compilers transform program source code to machine executable code. During this transformation, they perform a number of compiler optimizations to improve the performance of the generated executable code. Importantly, applying those optimizations depends on the source code structure, such as the parallel programming model used to parallelize an algorithm. Often, implementations of the same algorithm with different programming models have vastly different performance because the compiler optimized them differently. We create FAROS, a framework to structure and automate the analysis of compiler optimizations on programs. FAROS automates the building process, execution profiling, and analysis of compiler optimization of programs, through a configuration interface. It outputs compiler optimization reports to show which optimizations applied to which line of source code, leveraging compilation remarks output by the compiler. Also, FAROS supports benchmarking performance of different program versions by collecting execution time results. In this first release of FAROS, we provide a configuration file to analyze compiler optimization differences for sequential vs OpenMP compilation, including 38 programs consisting of HPC proxy/mini/large applications, and NAS and Rodina kernels for analysis.

Georgakoudis, Giorgis↗

STreCH

Symbolic regression software that formulates a symbolic regression problem as a mixed-integer nonlinear optimization problem, and solves it using a sequential tree construction heuristic

Leyffer, Sven↗

LLNL/SAC2000

SAC2000 (Seismic Analysis Code for the third millennium) is a general purpose interactive program designed for the study of sequential signals, especially time-series data.

Barno, Justin↗

WORM (Write One, Read Many)

WORM (Write One, Run Many) is an easy to use, cross platform, embedded and extensible, functional programming language designed to facilitate the creation of input-decks for computer codes that use standard ASCII text files for input. WORM makes it easy to create generic (yet, complex and powerful) reusable models. Additionally its nature allows for complex calculations and routines to be coded once and easily reused, further simplifying the creation of input decks. WORM (Write One, Run Many) is a powerful and versatile tool designed to improve the efficiency of today’s criticality safety analyst by allowing: + input decks for parametric studies to be created quickly and easily, + calculations and variables to be imbedded into any input deck, thus allowing for meaningful parameter specifications, + problems to be specified using any combination of units, and + complex mathematically defined models to be created. A very simple syntax is employed, and therefore the WORM is easy to learn. A WORM model is essentially a standard input deck with some of its numerical values replaced by WORM code. WORM code may include and evaluate the following mathematical operators and functions: addition, subtraction, multiplication, division, exponentiation, modulus, sine, cosine, tangent, arcsine, arccosine, arctangent, the natural logarithm, logarithm base 10, integer truncation, absolute value, and random number. Several common constants, e.g., pi, e, and Avogadros’s Number (both as 6.022e23 and 0.6022), are predefined in WORM. Additionally, many unit conversion factors are also predefined: millimeters, meters, inches, feet, yards, and mils to centimeters; kilograms, pounds, and ounces to grams; liters, milliliters, gallons, and fluid ounces to cubic centimeters; and angular degrees to radians. For parametric studies, WORM supports various shorthand list specifications: the explicit step size, linear interpolation, and logarithmic interpolation. The list notation sequentially assigns multiple values to a name. WORM creates an input deck for each value of the name. If multiple lists are used, WORM steps through each list individually, i.e., WORM creates input decks corresponding to each and every permutation of the list values. Additionally, a library of standard material definitions and Perl subroutines are included. Any one of these files can be incorporated into the subject model with a simple WORM read command. WORM is completely written in Perl, the Practical Extraction and Reporting Language. Perl is one of the most portable programming languages available today. As such, the WORM works on practically any computer platform.

Sartor, Raymond↗

Hybrid-RL-MPC4CLR (Hybird-Reinforcement-Learning-Model-Predictive-Control-for-Reserve-Policy-Assisted-Critical-Load-Restoration-in-Distribution-Grids)

Hybrid-RL-MPC4CLR was developed as a hybrid controller for active distribution grid critical load restoration, combining deep reinforcement learning (RL) and model predictive control (MPC) aiming at maximizing total restored load following an extreme event. The RL determines a policy for quantifying operating reserve requirements, thereby hedging against uncertainty, while the MPC models grid operations incorporating the RL policy actions (i.e., reserve requirements), renewable (wind and solar) power predictions, and load demand forecasts. The developers formulated the reserve requirement determination problem as a sequential decision-making problem based on the Markov Decision Process (MDP) and design an RL learning environment based on the OpenAI Gym framework and MPC simulation. The RL agent reward and MPC objective function aim to maximize and monotonically increase total restored load and minimize load shedding and renewable power curtailment. The software is developed using various software packages in Python. The MPC's optimal power flow (OPF) model is implemented using the Pyomo package, the RL simulation environment is implemented using the MPC simulation with various scenarios of renewable energy and load demand profiles and power outage beginning times, based on the OpenAI Gym framework. The RL agent training is performed using the RLlib Ray package. The RL algorithm is trained offline using historical forecasts of renewable generation and load demand profiles. Simulation analysis and performance tests are conducted using a modified IEEE 13-bus distribution test feeder containing wind turbine, photovoltaic, microturbine, and battery.

Eseye, Abinet Tesfaye↗