Search NASA⌕ Search

SEARCH · Search NASA

Results for “software development”

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 37 records · Page 2

MicroBooNE Public Data Sets: a Collaborative Tool for LArTPC Software Development

Among liquid argon time projection chamber (LArTPC) experiments MicroBooNE is the one that continually took physics data for the longest time (2015-2021), and represents the state of the art for reconstruction and analysis with this detector. Recently published analyses include oscillation physics results, searches for anomalies and other BSM signatures, and cross section measurements. LArTPC detectors are being used in current experiments such as ICARUS and SBND, and being planned for future experiments such as DUNE. MicroBooNE has recently released to the public two of its data sets, with the goal of enabling collaborative software developments with other LArTPC experiments and with AI or computing experts. These data sets simulate neutrino interactions on top of off-beam data, which include cosmic ray background and noise. The data sets are released in two formats: the native art/ROOT format used internally by the collaboration and familiar to other LArTPC experts, and the HDF5 format which contains reduced and simplified content and is suitable for usage by the broader community. This contribution presents the open data sets, discusses their motivation, the technical implementation, and the extensive documentation -- all inspired by FAIR principles. Finally, opportunities for collaborations are discussed.

46 INSTRUMENTATION RELATED TO NUCLEAR SCIENCE AND ↗

ExaWorks software development kit: a robust and scalable collection of interoperable workflows technologies

Scientific discovery increasingly requires executing heterogeneous scientific workflows on high-performance computing (HPC) platforms. Heterogeneous workflows contain different types of tasks (e.g., simulation, analysis, and learning) that need to be mapped, scheduled, and launched on different computing. That requires a software stack that enables users to code their workflows and automate resource management and workflow execution. Currently, there are many workflow technologies with diverse levels of robustness and capabilities, and users face difficult choices of software that can effectively and efficiently support their use cases on HPC machines, especially when considering the latest exascale platforms. We contributed to addressing this issue by developing the ExaWorks Software Development Kit (SDK). The SDK is a curated collection of workflow technologies engineered following current best practices and specifically designed to work on HPC platforms. We present our experience with (1) curating those technologies, (2) integrating them to provide users with new capabilities, (3) developing a continuous integration platform to test the SDK on DOE HPC platforms, (4) designing a dashboard to publish the results of those tests, and (5) devising an innovative documentation platform to help users to use those technologies. Our experience details the requirements and the best practices needed to curate workflow technologies, and it also serves as a blueprint for the capabilities and services that DOE will have to offer to support a variety of scientific heterogeneous workflows on the newly available exascale HPC platforms.

97 MATHEMATICS AND COMPUTING↗

DevOps Pragmatic Practices and Potential Perils in Scientific Software Development

The DevOps movement, which aims to accelerate the continuous delivery of high-quality software, has taken a leading role in reshaping the software industry. Likewise, there is growing interest in applying DevOps tools and practices in the domains of computational science and engineering (CSE) to meet the ever-growing demand for scalable simulation and analysis. Translating insights from industry to research computing, however, remains an ongoing challenge; DevOps for science and engineering demands adaptation and innovation in those tools and practices. There is a need to better understand the challenges faced by DevOps practitioners in CSE contexts in bridging this divide. To that end, we conducted a participatory action research study to collect and analyze the experiences of DevOps practitioners at a major US national laboratory through the use of storytelling techniques. We share lessons learned and present opportunities for future investigation into DevOps practice in the CSE domain.

97 MATHEMATICS AND COMPUTING↗

Creating Continuous Integration Infrastructure for Software Development on U.S. Department of Energy High-Performance Computing Systems

The Exascale Computing Project (ECP) software deployment effort developed and advanced DevOps capabilities. One goal was to enable robust continuous integration (CI) workflows that span the protected high performance computing (HPC) environments found within many of the Department of Energy’s (DOE) national laboratories. This article highlights several challenges encountered with enabling automation, such as charging models for CI jobs, and meeting individualized security requirements that revolve around strongly associating running code with a human identity. Here, it also describes how the Jacamar CI tool evolved to meet latter requirements and became a key aspect of the solutions currently offered. Derived from this experience, we offer a conceptual framework for understanding current and future CI challenges at DOE facilities and offer suggestions for long-term solutions.

97 MATHEMATICS AND COMPUTING↗

Chemical Reactivity Through Adaptive Quantum Mechanics/Many-Body Representations: Theoretical Development, Software Implementation, and Applications (Final Report)

The main objective of this research project was the development and application of a new theoretical/computational framework to model chemical transformations and electronic excitations in fluid mixtures across different phases. Our theoretical/computational framework combines our data-driven many-body (DD-MB) potentials representing molecular interactions with adaptive schemes for modeling chemical reactions in solution. The combination of these two components resulted in an adaptive quantum mechanics/many-body (adQM/MB) method that largely suppresses discontinuities between QM and MM regions, which affect existing QM/MM methods, and thus provides an accurate representation of both quantum mechanical and environmental effects through a rigorous description of mutual polarization between QM and MM regions. The implementation of our DD-MB potentials and adQM/MB method in popular software enabled computer simulations of solvation phenomena, reactive processes, and electronic excitations in fluid mixtures with chemical and spectroscopic accuracy, representing a major step toward realistic computer simulations of a wide range of molecular systems relevant to the DOE mission.

37 INORGANIC, ORGANIC, PHYSICAL, AND ANALYTICAL CH↗

HEP Software Development in the Next Decade; the Views of the HSF Community

We have known for a while now that projections of computing needs for the experiments running in 10 years from now are unaffordable. Over the past year the HSF has convened a series of workshops aiming to find consensus on the needs, and produce proposals for research and development to address this challenge. At this time many of the software related drafts are far enough along to give a clear picture of what will result from this process. This talk will synthesize and report on some of the key elements to come out of this community work.

46 INSTRUMENTATION RELATED TO NUCLEAR SCIENCE AND ↗

Peregrine Software Development: Report on the Code Conversion From Python to C++

This work package seeks to convert the Peregrine software tool from its original Python implementation to a production version based on the C++ language. Peregrine is a powerful research platform with a multitude of advanced data analytics and data visualization functionalities. Developed by scientists to explore multimodal and multidimensional data related to the production of components using powder bed additive manufacturing processes, the tool implements state-of-the-art algorithms to assist machine users in making build or part quality determinations. Given that Peregrine is data-intensive, the goal of this conversion is to enhance the tool’s flexibility and interactivity and reduce the number of code dependencies to facilitate its deployment as part of the ongoing technology transfer campaign. This brief document provides an overview of Peregrine’s functionalities and capabilities, along with a detailed description of the core functionalities that have been implemented to date in the new C++ version. This document serves as a development update at the end of the first year of the ongoing conversion and will be regularly updated as progress continues.

97 MATHEMATICS AND COMPUTING↗

Status of SAS4A/SASSYS-1 Software Development and Application (FY2024)

SAS4A/SASSYS-1 is a simulation tool used to perform deterministic analysis of anticipated events as well as design basis and beyond design basis accidents for advanced liquid-metal-cooled nuclear reactors. With its origin as SAS1A in the late 1960s, the SAS series of codes has been under continuous use and development for over fifty years. It has been identified as a critical element of safety analysis capabilities for the U.S. Department of Energy and is utilized within industry to perform the transient safety analyses required to support the licensing of Liquid Metal-cooled Fast Reactors (LMFRs). This report summarizes the code development and update activities carried out during FY2024. In FY2024, programmatic activities focused on key improvements to software useability, such as enhanced user interfaces for reactivity feedback modeling, improvements in stability/useability of the Code Manual, and improvements to the acceptance testing infrastructure, including automation of acceptance testing and generation of the Acceptance Testing Report. To support end user applications, an open training was held, a semi-public forum was maintained, and a practical benchmarking and validation matrix was developed which allowed limitations of existing testing capabilities to be assessed. The existing fuel models were also enhanced with improved modeling capabilities and testing for the oxide and annular fuel models.

22 GENERAL STUDIES OF NUCLEAR REACTORS↗

Software Development: A Tool for Smart Integration of Solar Power (Final Report)

As part of its SunShot funded Grid Assessor work Kevala assembled a team with deep electricity market, solar, software and product expertise to address a significant problem - reducing the risk of investing in solar by determining the inherent value of solar electricity based on the location where it is produced. Kevala’s Grid Assessor product is now in the market transforming the way solar assets are proposed, assessed, and financed, resulting in lower capital costs, the opening of new markets, and the streamlining of siting in the utility scale portion of the solar industry. Grid assessor accomplishes this by using detailed electricity infrastructure data, pricing information, GIS mapping, and proprietary algorithms to lower financial risk by providing transparency into the current and future value of projects based on their location.

14 SOLAR ENERGY↗

Software Development for Data Visualization and Analysis of PN-Diodes & MOSFET Devices

The U.S. Department of Energy has a broad mission to ensure the nation’s security by addressing ongoing environmental challenges, developing novel energy production technologies, and mitigating nuclear security concerns. These efforts benefit from developing more effective semiconductor materials and devices. The research discussed in this report aims to further the development of these new electronics by improving implementations of vertical device structures, which offer theoretically better performance compared to lateral structures. Specifically, it reviews the background and development of a new and easy-to-use program for data processing and analysis from experiments run on vertical gallium nitride power devices. Current vertical structures fall short in critical performance metrics, such as On-Resistance and Breakdown Voltage, due to poor management of the device’s electric field. Junction termination extensions, or JTEs, are a field management technique that increases a device’s resilience to expected failure modes by controlling its surface electric fields. Each JTE design requires significant experimental validation, consisting of hundreds of tested devices, each outputting an enormous set of data points. The new software includes multiple methods of filtering large sets of device testing data to identify and remove flawed devices, automate device analyses, and provide statistical breakdowns for four metrics used to define the effectiveness of the JTE and the current carrying capacity of the device. These results can then be related back to fabrication techniques and device design, and in the future, be combined with processing simulations to further improve our understanding of the JTE mechanisms.

97 MATHEMATICS AND COMPUTING↗

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↗