Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “Compiler Validation”

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

OpenMP 4.5 Validation and Verification Suite

OpenMP, a directive-based programming API, introduce directives for accelerator devices that programmers are starting to use more frequently in production codes. To make sure OpenMP directives work correctly across architectures, it is critical to have a mechanism that tests for an implementation's conformance to the OpenMP standard. This testing process can uncover ambiguities in the OpenMP specification, which helps compiler developers and users make a better use of the standard. We fill this gap through our validation and verification test suite that focuses on the offload directives available in OpenMP 4.5.

Pophale, SwaroopS↗

OECD NEA Benchmark Database of Spent Nuclear Fuel Isotopic Compositions for World Reactor Designs

Experimental data on the isotopic concentrations in irradiated nuclear fuel represent one of the primary methods for validating computational methods and nuclear data used for reactor and spent fuel depletion simulations that support nuclear fuel cycle safety and safeguards programs. Measurement data have previously not been available to users in a centralized or searchable format, and the majority of accessible information has been, for the most part, limited to light-water-reactor designs. This paper describes a recent initiative to compile spent fuel benchmark data for additional reactor designs used throughout the world that can be used to validate computer model simulations that support nuclear energy and nuclear safeguards missions. Experimental benchmark data have been expanded to include VVER-440, VVER-1000, RBMK, graphite moderated MAGNOX, gas cooled AGR, and several heavy-water moderated CANDU reactor designs. Additional experimental data for pressurized light water and boiling water reactor fuels has also been compiled for modern assembly designs and more extensive isotopic measurements. These data are being compiled and uploaded to a recently revised structured and searchable database, SFCOMPO, to provide the nuclear analysis community with a centrally-accessible resource of spent fuel compositions that can be used to benchmark computer codes, models, and nuclear data. The current version of SFCOMPO contains data for eight reactor designs, 20 fuel assembly designs, more than 550 spent fuel samples, and measured isotopic data for about 80 nuclides.

Gauld, Ian C↗

Using a Large Language Model as a Building Block to Generate Usable Validation and Verification Suite for OpenMP

In the HPC area, both hardware and software move quickly. Often new hardware is developed and deployed, the corresponding software stack, including compilers and other tools, are under active development while leading edge software developers are working to port and tune their applications, all at the same time. While the software ecosystem is in flux, one of the key challenges for users is obtaining insight into the state of implementation of key features in the programming languages and models their applications are using – whether they have been implemented, and whether the implementation conforms to the specification, especially for newly implemented features (less tested by widespread use). OpenMP is one of the most prominent shared memory programming models used for on-node programming in HPC. With the shift towards accelerators (such as GPUs and FPGAs) and heterogeneous programming OpenMP features are getting more complex. It is natural to ask whether generative AI approaches, and large language models (LLMs) in particular, can help in producing validation and verification test suites to allow users better and faster insights into the availability and correctness of OpenMP features of interest. In this work, we explore the use of ChatGPT-4 to generate a suite of tests for OpenMP features. We have chosen a set of directives and clauses, a total of 78 combinations, which first appeared in OpenMP 3.0 (released in May 2008) but are also relevant for accelerators. We prompted ChatGPT to generate tests in the C and Fortran languages, for both host (CPU) and device (accelerator). On the Summit super-computer using the GNU implementation, we found that, of the 78 generated tests 67 C tests and 43 Fortran tests compiled successfully and fewer than those executed to completion. On further analysis we show that not all generated tests are valid. We document the process, results, and provide detailed analysis regarding the quality of tests generated. With the aim of providing input to a production quality validation and verification suite, we manually implement the corrections required to make the tests valid according to the current OpenMP specification. We quantify this effort as small, medium, or large, and record the lines of code changed to correct the invalid tests. With the corrected tests we validate recent implementations from HPE, AMD, and GNU on the Frontier supercomputer. Our experiment and subsequent analysis show that although LLMs are capable of producing HPC specific codes, they are limited by their understanding of the deeper semantics and restrictions of programming models such as OpenMP. Unsurprisingly more commonly used features have better support, while some OpenMP 3.0 directives such as sections and tasking are not universally supported on accelerators. We demonstrate that successful compilation and execution to completion are inadequate metrics for evaluating generated code and that, at this time, commodity LLMs require expert intervention for code verification. This points to gaps in the training data that is currently available for HPC. We demonstrate that with "small" effort 37% of generated invalid C tests and 63% of generated invalid Fortran tests could be corrected. This improves productivity of test generation as we circumvent writing from scratch and the common programming errors associated with it.

Pophale, Swaroop [ORNL] (ORCID:0000000185446367)↗

Learning-Based Quantum Compilation: Translating QASM to QIR with CodeBERT

We propose a learning-based approach to quantum compilation by translating OpenQASM to Quantum Intermediate Representation (QIR) using a fine-tuned CodeBERT model. Trained on 10,000 synthetic QASM-QIR pairs, the model captures code semantics while addressing QIR verbosity and the 512-token limit via a custom token compression scheme. Finetuning was performed on the Frontier supercomputer, with results showing syntactic correctness and stable validation loss reduction. Our method moves toward enabling flexible, language-modeldriven quantum software tools. It also introduces syntax error handling and the possibility of incorporating classical control constructs, addressing limitations in existing rule-based compilers like qBraid-QIR. While the current model has been validated on quantum-only circuits, we propose future evaluations on hybrid quantum-classical examples. This poster will provide architecture insights, compression examples, training loss plots, and QIR outputs. Our work highlights the potential for scalable, adaptable compilation in future quantum toolchains.

Afrose, Sharmin [ORNL]↗

Survey of Relevant Data from the MSRP to Guide Development of MSR Chemistry Modeling Benchmarks

The Multiphysics Applications technical area of the Nuclear Energy Advanced Modeling and Simulation (NEAMS) program is tasked with assessing, demonstrating, and applying NEAMS tools in solving multiphysics problems of nuclear reactors, such as liquid-fueled molten salt reactors (MSRs), which are the focus of this report. MSRs are actively being pursued as a potential candidate for power and heat generation by the nuclear industry. However, the inherent multiphysics nature of liquid-fueled MSRs, stemming from the strong interrelationship of neutronics, thermal fluids, and chemistry phenomena, provides unique challenges in modeling and simulation (mod/sim). Therefore, it will be important to develop mod/sim tools with varying types of multiphysics coupling that depend on the problem. The current work is focused on the initiation and development of MSR chemistry modeling benchmarks useful for validating current and potential future NEAMS tools. Development of such benchmarks include the following actions: 1) Summarize available chemistry data from the Oak Ridge National Laboratory (ORNL) MSR Program (MSRP) including operation of the Molten Salt Reactor Experiment (MSRE) and design studies for the Molten Salt Breeder Reactor (MSBR) concept; 2) Recommend simulation problems in MSR chemistry mod/sim based on (1); 3) Assess the current state of NEAMS tools that may support (2); 4) Demonstrate and validate the capabilities of the NEAMS tools in (3) while providing iterative feedback on future code development activities. The objective of this report is to initiate this effort by completing actions (1) and (2), which are discussed in Section 2. An overview of the relevant available MSRE experimental data is provided with examples of how this data may be useful in chemistry mod/sim problems, with the caveat that most of this data is over 50 years old, therefore some problem details as well as uncertainty estimates are often not provided. In Section 3, the current state of NEAMS tools is assessed for potential use in these mod/sim problems, with considerations for future code development activities, supporting action (3). Future work supporting this project under NEAMS may include a deeper dive into the specific phenomena discussed here including tasks such as the compilation of additional available data, updates in code development activities, and ultimately the demonstration and validation of these tools, supporting action (4).

22 GENERAL STUDIES OF NUCLEAR REACTORS↗

EFFICIENT SELECTION AND CLASSIFICATION OF INFRARED EXCESS EMISSION STARS BASED ON AKARI AND 2MASS DATA

The selection of young stellar objects (YSOs) based on excess emission in the infrared is easily contaminated by post-main-sequence stars and various types of emission line stars with similar properties. We define in this paper stringent criteria for an efficient selection and classification of stellar sources with infrared excess emission based on combined Two Micron All Sky Survey (2MASS) and AKARI colors. First of all, bright dwarfs and giants with known spectral types were selected from the Hipparcos Catalogue and cross-identified with the 2MASS and AKARI Point Source Catalogues to produce the main-sequence and the post-main-sequence tracks, which appear as expected as tight tracks with very small dispersion. However, several of the main-sequence stars indicate excess emission in the color space. Further investigations based on the SIMBAD data help to clarify their nature as classical Be stars, which are found to be located in a well isolated region on each of the color-color (C-C) diagrams. Several kinds of contaminants were then removed based on their distribution in the C-C diagrams. A test sample of Herbig Ae/Be stars and classical T Tauri stars were cross-identified with the 2MASS and AKARI catalogs to define the loci of YSOs with different masses on the C-C diagrams. Well classified Class I and Class II sources were taken as a second test sample to discriminate between various types of YSOs at possibly different evolutionary stages. This helped to define the loci of different types of YSOs and a set of criteria for selecting YSOs based on their colors in the near- and mid-infrared. Candidate YSOs toward IC 1396 indicating excess emission in the near-infrared were employed to verify the validity of the new source selection criteria defined based on C-C diagrams compiled with the 2MASS and AKARI data. Optical spectroscopy and spectral energy distributions of the IC 1396 sample yield a clear identification of the YSOs and further confirm the criteria defined for exploring the nature and properties of unknown excess emission sources in the infrared without optical identification.

79 ASTRONOMY AND ASTROPHYSICS↗

Illumina Sequencing for SARS-CoV-2 Training [Slides]

This report compiles Wetlab training slides for DTRA sponsored training and has presentations titled: 1) Library Validation Step 2: Bioanalyzer DNA HS Assay, 2) Library Validation Step 3: qPCR, 3) Setting up a MiSeq Run, 4) Sample Prep & Initial QC, 5) Detailed Illumina MiSeq Sequencing, 6) AmpliSeq for Illumina: Best Practices, and 7) Sample/Data Management for SARS-CoV-2 Samples.

37 INORGANIC, ORGANIC, PHYSICAL, AND ANALYTICAL CH↗

Chemical Blast Standard (1 kg)

Chemical explosions create blast waves with large overpressure disturbances. It is important to develop a standard blast model based on data to accurately predict acoustic blast-wave amplitudes near detonations and invert for explosion energy from distant observations of blast-wave signals. However, open data from large, controlled chemical explosions with reliable ground truth can be challenging to find. The lack of access to such data could limit the number of contributions to related research and potentially stifle the rate of discoveries or validation of existing models. Here, to address these data scarcity problem, we have curated and compiled a standardized set of 817 blast-wave waveforms from 19 distinct high-explosive events. The blast-wave waveforms are standardized to a 1 kg trinitrotoluene explosion using scaling laws and corrections for location effects. A brief overview of the dataset is presented along with explosion feature models as well as recommendations for extracting explosion features. The resulting dataset is distributed to an open repository in both Seismic Analysis Code and pandas DataFrame formats containing the waveforms, the scaled distances, and the sample rates.

58 GEOSCIENCES↗

Using Verified Lifting to Optimize Legacy Stencil Codes (Final Project Report)

This project investigated new techniques for compiling stencil and stencil-like computations. Stencils computations are commonly found in applications such as image processing, physical simulations, image processing, and machine learning. In recent years, many high-performance domain-specific languages (DSLs) have been proposed to optimize stencil computations. To leverage such DSLs, however, existing codes often need to be rewritten. Such rewriting is manual, labor intensive, and error-prone. To alleviate such issues, this project investigated the application of program synthesis and artificial learning techniques to enable stencil computations to automatically leverage new high-performance DSLs. Rather than constructing syntax driven rules, verified lifting uses program synthesis to search for a target code fragment to compile the given input code into. In addition, it also searches for a proof that validates how the found target code fragment preserves the semantics of the original input. Thus, the target code fragment is guaranteed to be semantically equivalent to the input.

97 MATHEMATICS AND COMPUTING↗

ORIGEN Integration into MPACT

This report documents the work performed to meet the objectives of the RTM milestone on ORIGEN Integration into MPACT. The main objective of the milestone was to demonstrate the capability to perform depletion problems with MPACT where the point depletion calculation, which solves the nuclide transmutation equation with ORIGEN. While MPACT already has a depletion capability based on ORIGEN, it is desired to transition to using ORIGEN because ORIGEN has undergone far more validation and software quality assurance than the implementation in MPACT. The integration was completed by compiling and linking the two codes together at build-time. Within the TriBITS build structure used for VERA, the MPACT and SCALE code repositories are already present. An optional dependency was created between MPACT to SCALE. The API available within ORIGEN was modified slightly to be able to be used by MPACT and two new software classes were implemented in MPACT to call the necessary ORIGEN subroutines. To test the ORIGEN integration two benchmark problems were analyzed. The first being the spent fuel isotopics from the Takahama-3 PWR reactor. This involved comparisons to experimentally measured nuclide concentrations for select actinides and fission products, and comparisons to other numerical results. The benchmark defines a 1-D problem limiting most of the effects due to the accuracy of a multi-dimensional transport solver, and thus differences can be assumed to be more likely caused by the point depletion solver methodology and associated nuclear data. The other benchmark analyzed two problems from the reactor physics benchmarks for LWR next generation fuel. The two configurations simulated were a PWR UO 2 pin cell and PWR UO 2 assembly. For all the benchmark problems the results were generally in good agreement with the other numerical results which were computed by several codes, including MPACT with its original depletion implementation. Thus it is concluded that ORIGEN was successfully integrated into MPACT and is capable of providing reasonable results. An additional cursory analysis of the performance of the ORIGEN point depletion compared to native MPACT point depletion solver was also performed. In this analysis it was observed that ORIGEN, on average, needs about 0.28 to 0.30 seconds to perform the point depletion calculation. This is greater than the target performance of 0.1 seconds which means future work to investigate smaller depletion chains will be needed. The MPACT internal depletion solver completes the point depletion calculation in 0.02 seconds, so it may be used for routine analysis until the use of a simplified burnup chain and performance improvements are implemented. Other future work should focus on implementing the post-correction fix-up and quadratic depletion and computation of decay heat and gamma sources.

22 GENERAL STUDIES OF NUCLEAR REACTORS↗

Improving Runtime Performance of Tensor Computations using Rust From Python

In this work, we investigate improving the runtime performance of key computational kernels in the Python Tensor Toolbox (pyttb), a package for analyzing tensor data across a wide variety of applications. Recent runtime performance improvements have been demonstrated using Rust, a compiled language, from Python via extension modules leveraging the Python C API—e.g., web applications, data parsing, data validation, etc. Using this same approach, we study the runtime performance of key tensor kernels of increasing complexity, from simple kernels involving sums of products over data accessed through single and nested loops to more advanced tensor multiplication kernels that are key in low-rank tensor decomposition and tensor regression algorithms. In numerical experiments involving synthetically generated tensor data of various sizes and these tensor kernels, we demonstrate consistent improvements in runtime performance when using Rust from Python over 1) using Python alone, 2) using Python and the Numba just-in-time Python compiler (for loop-based kernels), and 3) using the NumPy Python package for scientific computing (for pyttb kernels).

97 MATHEMATICS AND COMPUTING↗

Reimagining Disassembly Interfaces With Visualization: Combining Instruction Tracing and Control Flow With DisViz

In applications where efficiency is critical, developers may examine their compiled binaries, seeking to understand how the compiler transformed their source code and what performance implications that transformation may have. This analysis is challenging due to the vast number of disassembled binary instructions and the many-to-many mappings between them and the source code. These problems are exacerbated as source code size increases, giving the compiler more freedom to map and disperse binary instructions across the disassembly space. Interfaces for disassembly typically display instructions as an unstructured listing or sacrifice the order of execution. Here, we design a new visual interface for disassembly code that combines execution order with control flow structure, enabling analysts to both trace through code and identify familiar aspects of the computation. Central to our approach is a novel layout of instructions grouped into basic blocks that displays a looping structure in an intuitive way. We add to this disassembly representation a unique block-based mini-map that leverages our layout and shows context across thousands of disassembly instructions. Finally, we embed our disassembly visualization in a web-based tool, DisViz, which adds dynamic linking with source code across the entire application. DizViz was developed in collaboration with program analysis experts following design study methodology and was validated through evaluation sessions with ten participants from four institutions. Participants successfully completed the evaluation tasks, hypothesized about compiler optimizations, and noted the utility of our new disassembly view. Our evaluation suggests that our new integrated view helps application developers in understanding and navigating disassembly code.

Computer science↗

Lowering and Runtime Support for Fortran’s Multi-Image Parallel Features using LLVM Flang, PRIF, and Caffeine

This paper provides an overview of the multi-image parallel features in Fortran 2023 and their implementation in the LLVM flang compiler and the Caffeine parallel runtime library. The features of interest support a Single-Program, Multiple-Data (SPMD) programming model based on executing multiple “images”, each of which is a program instance. The features also support a Partitioned Global Address Space (PGAS) in the form of “coarray” distributed data structures. The paper discusses the lowering of multi-image features to the Parallel Runtime Interface for Fortran (PRIF) and the implementation of PRIF in the Caffeine parallel runtime library. This paper also provides an early view into the design of a new multi-image dialect of the LLVM Multi-Level Intermediate Representation (MLIR). We describe validation and testing of the resulting software stack, and demonstrate that performance compares favorably to another open-source compiler and runtime library: GNU Compiler Collection (GCC) gfortran and OpenCoarrays, respectively.

Bonachea, Dan↗

Social cost impact assessment of pipeline infrastructure projects

A key advantage of trenchless construction methods compared with traditional open-cut methods is their ability to install or rehabilitate underground utility systems with limited disruption to the surrounding built and natural environments. The equivalent monetary values of these disruptions are commonly called social costs. Social costs are often ignored by engineers or project managers during project planning and design phases, partially because they cannot be calculated using standard estimating methods. In recent years some approaches for estimating social costs were presented. Nevertheless, the cost data needed for validation of these estimating methods is lacking. Development of such social cost databases can be accomplished by compiling relevant information reported in various case histories. This paper identifies eight most important social cost categories, presents mathematical methods for calculating them, and summarizes the social cost impacts for two pipeline construction projects. The case histories are analyzed in order to identify trends for the various social cost categories. The effectiveness of the methods used to estimate these values is also discussed. These findings are valuable for pipeline infrastructure engineers making renewal technology selection decisions by providing a more accurate process for the assessment of social costs and impacts. - Highlights: • Identified the eight most important social cost factors for pipeline construction • Presented mathematical methods for calculating those social cost factors • Summarized social cost impacts for two pipeline construction projects • Analyzed those projects to identify trends for the social cost factors.

54 ENVIRONMENTAL SCIENCES↗

WE-DE-201-04: Cross Validation of Knowledge-Based Treatment Planning for Prostate LDR Brachytherapy Using Principle Component Analysis

Purpose: To validate a knowledge-based algorithm for prostate LDR brachytherapy treatment planning. Methods: A dataset of 100 cases was compiled from an active prostate seed implant service. Cases were randomized into 10 subsets. For each subset, the 90 remaining library cases were registered to a common reference frame and then characterized on a point by point basis using principle component analysis (PCA). Each test case was converted to PCA vectors using the same process and compared with each library case using a Mahalanobis distance to evaluate similarity. Rank order PCA scores were used to select the best-matched library case. The seed arrangement was extracted from the best-matched case and used as a starting point for planning the test case. Any subsequent modifications were recorded that required input from a treatment planner to achieve V100>95%, V150<60%, V200<20%. To simulate operating-room planning constraints, seed activity was held constant, and the seed count could not increase. Results: The computational time required to register test-case contours and evaluate PCA similarity across the library was 10s. Preliminary analysis of 2 subsets shows that 9 of 20 test cases did not require any seed modifications to obtain an acceptable plan. Five test cases required fewer than 10 seed modifications or a grid shift. Another 5 test cases required approximately 20 seed modifications. An acceptable plan was not achieved for 1 outlier, which was substantially larger than its best match. Modifications took between 5s and 6min. Conclusion: A knowledge-based treatment planning algorithm for prostate LDR brachytherapy is being cross validated using 100 prior cases. Preliminary results suggest that for this size library, acceptable plans can be achieved without planner input in about half of the cases while varying amounts of planner input are needed in remaining cases. Computational time and planning time are compatible with clinical practice.

60 APPLIED LIFE SCIENCES↗

Study of a Docker Use-Case for HEP

Over the past few years, container technology has become increasingly promising as a means to seamlessly make our software available across a wider range of platforms. In December 2015, we decided to put together a set of docker images that serve as a demonstration of this container technology for managing a run-time environment for art-related software projects, and also serve as a set of test cases for evaluation of performance. Docker[1] containers provide a way to “wrap up a piece of software in a complete filesystem that contains everything it needs to run”. In combination with Shifter[2], such containers provide a way to run software developed and deployed on “typical” HEP platforms (such as SLF 6, in common use at Fermilab and on OSG platforms) on HPC facilities at NERSC. Docker containers provide a means of delivering software that can be run on a variety of hosts without needing to be compiled specially for each OS to be supported. This could substantially reduce the effort required to create and validate a new release, since one build could be suitable for use on both grid machines (both FermiGrid and OSG) as well as any machine capable of running the Docker container. In addition, docker containers may provide for a quick and easy way for users to install and use a software release in a standardized environment. This report contains the results and status of this demonstration and evaluation.

97 MATHEMATICS AND COMPUTING↗

Critical Configuration and Physics Measurements for Assemblies of U(93.15)O 2 Fuel Rods

A series of critical experiments were completed in 1962-1965 at Oak Ridge National Laboratory’s (ORNL’s) Critical Experiments Facility (CEF) in support of the Medium-Power Reactor Experiments (MPRE) program. In the late 1950s, efforts were made to study “power plants for the production of electrical power in space vehicles.”(a) The MPRE program was a part of those efforts and studied the feasibility of a stainless-steel system, boiling potassium 1 MW(t), or about 140 kW(e), reactor. The program was carried out in [fiscal years] 1964, 1965, and 1966. A summary of the program’s effort was compiled in 1967. The delayed critical experiments were a mockup of a small, potassium-cooled space power reactor for validation of reactor calculations and reactor physics methods. Initial experiments, performed in November and December of 1962, consisted of a core of unmoderated stainless-steel tubes, each containing 26 UO 2 fuel pellets, surrounded by a graphite reflector. Measurements were made to determine critical reflector arrangements, fission-rate distributions, and cadmium ratio distributions. Subsequent experiments used beryllium reflectors and also measured the reactivity for various materials placed in the core. “The [assemblies were built] on [a] vertical assembly machine so that the movable part was the core and bottom reflector.”(Reference 1) The experiment studied in this evaluation was the first of the series and had the fuel tubes packed tightly into a 22.87 cm outside diameter (OD) core tank. Two critical configurations were found by varying the amount of graphite reflector (References 1 and 2). Once the critical configurations had been achieved, various measurements of reactivity, relative axial and radial activation rates of 235 U, and cadmium ratios were performed. The cadmium ratio, reactivity, and activation rate measurements performed on the critical configurations are described in Sections 1.3, 1.4 and 1.7, respectively. Information for this evaluation was compiled from References 1 and 2, reports on subsequent experiments in the series , and the experimental logbook, and from communication with the experimenter, John T. Mihalczo.

11 NUCLEAR FUEL CYCLE AND FUEL MATERIALS↗