Search NASA⌕ Search

SEARCH · Search NASA

Results for “application binary interface”

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 19 records

Working with Multiple MPIs: Overcoming ABI Incompatibility

Scientific applications rely on third-party libraries, which may have multiple implementations. While sharing an application programming interface (API), many of these implementations do not have a shared application binary interface (ABI) and require recompiling. Recompiling can be a long and complex process and sometimes not even an option when the application is shipped binary only. ABI incompatibility strikes at the heart of portability, productivity, and performance by (1) impeding application execution across different HPC and Cloud systems; (2) adding developer hours rebuilding an application; and (3) not taking advantage of host-optimized libraries. This tutorial teaches attendees a portable way to address ABI incompatibility in MPI using the Wi4MPI library. Wi4MPI translates the ABI dynamically from the MPI library used to build the application to a different MPI library available at run time. With Wi4MPI, HPC practitioners can break the portability barrier imposed by ABI incompatibility, potentially increase performance, and increase user productivity. The tutorial is broken down in three components: (1) Understanding ABI compatibility in MPI; (2) Translating MPI libraries dynamically; and (3) Applying dynamic translation to key use cases in HPC, including Containers. If you use more than one MPI library or supercomputer, this tutorial is for you.

97 MATHEMATICS AND COMPUTING↗

Binary-level Software Compatibility Tool Agreement

Application Binary Interface (ABI) compatibility is essential for system or software updates to ensure that libraries continue to function. Tools that can assess a binary or library ABI can thus be used to make predictions about compatibility, and predict downstream bugs by informing developers and users about issues. In this work, we are interested in describing a set of well-known tools for assessing ABI, and testing them in a controlled set experiments to assess tool agreement. We run 7660 smaller experiments across tools (N=30,640 total results) to evaluate not only predictions, but also each tool’s ability to provide detail about underlying issues. In this paper, along with highlighting the problem of assessing ABI compatibility and critiquing the pros and cons of currently available tools, we provide guidance to developers interested to test ABI based on our empirical results and suggestions for future work.

ABI↗

Diffuse-Interface Methods in Fluid Mechanics

The authors review the development of diffuse-interface models of hydrodynamics and their application to a wide variety of interfacial phenomena. The authors discuss the issues involved in formulating diffuse-interface models for single-component and binary fluids. Recent applications and computations using these models are discussed in each case. Further, the authors address issues including sharp-interface analyses that relate these models to the classical free-boundary problem, related computational approaches to describe interfacial phenomena, and related approaches describing fully-miscible fluids.

SURFACE DIFFUSION↗

DeePMD-kit v2: A software package for deep potential models

DeePMD-kit is a powerful open-source software package that facilitates molecular dynamics simulations using machine learning potentials known as Deep Potential (DP) models. This package, which was released in 2017, has been widely used in the fields of physics, chemistry, biology, and material science for studying atomistic systems. The current version of DeePMD-kit offers numerous advanced features, such as DeepPot-SE, attention-based and hybrid descriptors, the ability to fit tensile properties, type embedding, model deviation, DP-range correction, DP long range, graphics processing unit support for customized operators, model compression, non-von Neumann molecular dynamics, and improved usability, including documentation, compiled binary packages, graphical user interfaces, and application programming interfaces. This article presents an overview of the current major version of the DeePMD-kit package, highlighting its features and technical details. Additionally, this article presents a comprehensive procedure for conducting molecular dynamics as a representative application, benchmarks the accuracy and efficiency of different models, and discusses ongoing developments.

97 MATHEMATICS AND COMPUTING↗

Curvature Memory in Electrically Stimulated Lipid Membranes

Here, we demonstrate, using non-equilibrium molecular dynamics simulations, that lipid membrane capacitance varies with surface charge accumulation linked to membrane shape and curvature changes. Specifically, we show that lipid membranes exhibit a hysteretic response when exposed to oscillatory electric fields. The electromechanical coupling in these membranes leads to hysteretic buckling, in which the membrane can spontaneously buckle in one of two distinct directions along the electric field, even for the same ionic charge accumulation at the water–membrane interface. In this regard, these binary buckled membrane states suggest potential applications in neuromorphic computing. Their bistable nature, characterized by two distinct and stable configurations, could serve as a foundation for implementing memory storage systems and logic operations. Furthermore, we introduce a circuit model that captures these dynamic effects, offering insights into emergent memory effects in electrically stimulated lipid membranes. Finally, this work presents lipid bilayers as dynamic, adaptable elements and suggests a new platform for exploring energy storage, information processing, and memory encoding at the lipid membrane level.

59 BASIC BIOLOGICAL SCIENCES↗

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↗

or-topas: Operations Research Toolkit for Pyomo Alternative Solutions

SAND2026-16702O OR-TOPAS: Operations Research Toolkit for Pyomo Alternative Solutions is a tool that enhances optimization applications defined by the Pyomo modeling library. It offers functions to generate optimal or near-optimal solutions, operating independently of Pyomo’s solver interface. Users can configure these functions with specific solver names and options, resulting in a custom solution object that returns a list of solutions. The OR-TOPAS library includes methods tailored to the properties of the model, such as binary integer programs versus linear programs, and specific solver interfaces like Gurobi. It does not provide models for specific applications, but it is applicable to a wide range of Pyomo optimization models. Sandia National Laboratories is a multimission laboratory managed and operated by National Technology & Engineering Solutions of Sandia, LLC, a wholly owned subsidiary of Honeywell International Inc., for the U.S. Department of Energy’s National Nuclear Security Administration under contract DE-NA0003525.

Siirola, John [Sandia National Lab. (SNL-CA), Live↗

Anisotropic interface kinetics and tilted cells in unidirectional solidification

A nonlinear evolution equation is derived which governs the cellular structure of a binary alloy with a small segregation coefficient, including the effects of anisotropic interface kinetics. This equation, applicable to long-wave instabilities of a planar interface, describes the spatial pattern of the growing disturbances. The presence of anisotropy causes the cells to grow at an angle to the normal of the planar front. This transition to a cellular morphology is shown to be a subcritical instability.

Young, G. W.↗

User Interactive Software for Analysis of Human Physiological Data

Ambulatory physiological monitoring has been used to study human health and performance in space and in a variety of Earth-based environments (e.g., military aircraft, armored vehicles, small groups in isolation, and patients). Large, multi-channel data files are typically recorded in these environments, and these files often require the removal of contaminated data prior to processing and analyses. Physiological data processing can now be performed with user-friendly, interactive software developed by the Ames Psychophysiology Research Laboratory. This software, which runs on a Windows platform, contains various signal-processing routines for both time- and frequency- domain data analyses (e.g., peak detection, differentiation and integration, digital filtering, adaptive thresholds, Fast Fourier Transform power spectrum, auto-correlation, etc.). Data acquired with any ambulatory monitoring system that provides text or binary file format are easily imported to the processing software. The application provides a graphical user interface where one can manually select and correct data artifacts utilizing linear and zero interpolation and adding trigger points for missed peaks. Block and moving average routines are also provided for data reduction. Processed data in numeric and graphic format can be exported to Excel. This software, PostProc (for post-processing) requires the Dadisp engineering spreadsheet (DSP Development Corp), or equivalent, for implementation. Specific processing routines were written for electrocardiography, electroencephalography, electromyography, blood pressure, skin conductance level, impedance cardiography (cardiac output, stroke volume, thoracic fluid volume), temperature, and respiration

Cowings, Patricia S.↗

Rapid Diagnostics of Onboard Sequences

Keeping track of sequences onboard a spacecraft is challenging. When reviewing Event Verification Records (EVRs) of sequence executions on the Mars Exploration Rover (MER), operators often found themselves wondering which version of a named sequence the EVR corresponded to. The lack of this information drastically impacts the operators diagnostic capabilities as well as their situational awareness with respect to the commands the spacecraft has executed, since the EVRs do not provide argument values or explanatory comments. Having this information immediately available can be instrumental in diagnosing critical events and can significantly enhance the overall safety of the spacecraft. This software provides auditing capability that can eliminate that uncertainty while diagnosing critical conditions. Furthermore, the Restful interface provides a simple way for sequencing tools to automatically retrieve binary compiled sequence SCMFs (Space Command Message Files) on demand. It also enables developers to change the underlying database, while maintaining the same interface to the existing applications. The logging capabilities are also beneficial to operators when they are trying to recall how they solved a similar problem many days ago: this software enables automatic recovery of SCMF and RML (Robot Markup Language) sequence files directly from the command EVRs, eliminating the need for people to find and validate the corresponding sequences. To address the lack of auditing capability for sequences onboard a spacecraft during earlier missions, extensive logging support was added on the Mars Science Laboratory (MSL) sequencing server. This server is responsible for generating all MSL binary SCMFs from RML input sequences. The sequencing server logs every SCMF it generates into a MySQL database, as well as the high-level RML file and dictionary name inputs used to create the SCMF. The SCMF is then indexed by a hash value that is automatically included in all command EVRs by the onboard flight software. Second, both the binary SCMF result and the RML input file can be retrieved simply by specifying the hash to a Restful web interface. This interface enables command line tools as well as large sophisticated programs to download the SCMF and RMLs on-demand from the database, enabling a vast array of tools to be built on top of it. One such command line tool can retrieve and display RML files, or annotate a list of EVRs by interleaving them with the original sequence commands. This software has been integrated with the MSL sequencing pipeline where it will serve sequences useful in diagnostics, debugging, and situational awareness throughout the mission.

Starbird, Thomas W.↗

Future Standardization of Space Telecommunications Radio System with Core Flight System

NASA Glenn Research Center (GRC) is integrating the NASA Space Telecommunications Radio System (STRS) Standard with the Core Flight System (cFS). The STRS standard provides a common, consistent framework to develop, qualify, operate and maintain complex, reconfigurable and reprogrammable radio systems. The cFS is a flexible, open architecture that features a plug-and-play software executive called the Core Flight Executive (cFE), a reusable library of software components for flight and space missions and an integrated tool suite. Together, STRS and cFS create a development environment that allows for STRS compliant applications to reference the STRS APIs through the cFS infrastructure. These APis are used to standardize the communication protocols on NASAs space SDRs. The cFE-STRS Operating Environment (OE) is a portable cFS library, which adds the ability to run STRS applications on existing cFS platforms. The purpose of this paper is to discuss the cFE-STRS OE prototype, preliminary experimental results performed using the Advanced Space Radio Platform (ASRP), the GRC Sband Ground Station and the SCaN (Space Communication and Navigation) Testbed currently flying onboard the International Space Station. Additionally, this paper presents a demonstration of the Consultative Committee for Space Data Systems (CCSDS) Spacecraft Onboard Interface Services (SOIS) using electronic data sheets inside cFE. This configuration allows for the data sheets to specify binary formats for data exchange between STRS applications. The integration of STRS with cFS leverages mission-proven platform functions and mitigates barriers to integration with future missions. This reduces flight software development time and the costs of software-defined radio (SDR) platforms. Furthermore, the combined benefits of STRS standardization with the flexibility of cFS provide an effective, reliable and modular framework to minimize software development efforts for spaceflight missions.

space communications↗

Future Standardization of Space Telecommunications Radio System with Core Flight System

NASA Glenn Research Center (GRC) is integrating the NASA Space Telecommunications Radio System (STRS) Standard with the Core Flight System (cFS), an avionics software operating environment. The STRS standard provides a common, consistent framework to develop, qualify, operate and maintain complex, reconfigurable and reprogrammable radio systems. The cFS is a flexible, open architecture that features a plugand- play software executive called the Core Flight Executive (cFE), a reusable library of software components for flight and space missions and an integrated tool suite. Together, STRS and cFS create a development environment that allows for STRS compliant applications to reference the STRS application programmer interfaces (APIs) that use the cFS infrastructure. These APIs are used to standardize the communication protocols on NASAs space SDRs. The cFS-STRS Operating Environment (OE) is a portable cFS library, which adds the ability to run STRS applications on existing cFS platforms. The purpose of this paper is to discuss the cFS-STRS OE prototype, preliminary experimental results performed using the Advanced Space Radio Platform (ASRP), the GRC S‑ band Ground Station and the SCaN (Space Communication and Navigation) Testbed currently flying onboard the International Space Station (ISS). Additionally, this paper presents a demonstration of the Consultative Committee for Space Data Systems (CCSDS) Spacecraft Onboard Interface Services (SOIS) using electronic data sheets (EDS) inside cFE. This configuration allows for the data sheets to specify binary formats for data exchange between STRS applications. The integration of STRS with cFS leverages mission-proven platform functions and mitigates barriers to integration with future missions. This reduces flight software development time and the costs of software-defined radio (SDR) platforms. Furthermore, the combined benefits of STRS standardization with the flexibility of cFS provide an effective, reliable and modular framework to minimize software development efforts for spaceflight missions.

space communications↗

Complex polycation redox material interfaced with renewable porous carbon for asymmetric supercapacitors

Mixed polycation transition metal ferrites are known to exhibit unique and superior characteristics for structural, electrical, magnetic, and optical applications. Although a few binary transition metal ferrites are found to be suitable for electrochemical energy storage application, ternary transition metal ferrites are not investigated for asymmetric supercapacitors (ASCs). Mixed polycation oxides are expected to have increased active sites that can facilitate proton and electron transfer impacting the redox reactions. Specific crystal structure and associated lattice parameters as well as surface and morphological characteristics can also influence the energy storage properties. This study for the first time reports a novel complex polycation redox material, (Cu p Mn q Zn r ) x Fe y O z and renewable pinewood (PW) derived porous carbon (POC) as electrodes for ASC. Both (Cu p Mn q Zn r ) x Fe y O z and PW-POC are subjected to electrochemical characterization and used in ASC configuration with aqueous KOH electrolyte. It is anticipated that the Faradaic characteristics of (Cu p Mn q Zn r ) x Fe y O z will make it to serve as a cathode while PW-POC with capacitive behavior will act as anode in ASCs. Relatively higher specific capacitance of > 200 F/g is observed for the (Cu p Mn q Zn r ) x Fe y O z reference electrode and fabricated ASCs. Capacitance retention rate is tested in 10,000 cycles for the working electrodes whereas for ASC, the stability tests are performed over 100 charging-discharging cycles exhibiting relatively higher capacitance retention. (Cu p Mn q Zn r ) x Fe y O z appears to be a promising material for a supercapacitor.

(CupMnqZnr)xFeyOz↗

Microphone Phased Array NetCDF/HDF5 Archival Files: Application Program Interface Reference

An application program interface (API) has been developed for the creation and access of structured data files generated by microphone phased arrays utilized in aeroacoustics research. Two structured binary file formats are supported, namely NetCDF (Network Common Data Form) and HDF5 (Hierarchical Data Format) files. The API consists of a library of routines callable from C, Fortran or Matlab, with native versions of the API provided for each language. The libraries are divided into categories for file handling, file definition and initialization, data writing, data recovery, and error handling. The API is intended to provide a mechanism for generating self-describing binary files for long-term archiving of raw and processed data generated by phased array systems.

Humphreys, William M., Jr.↗

Effect of zone size on the convergence of exact solutions for diffusion in single phase systems with planar, cylindrical or spherical geometry

Exact solutions for diffusion in single phase binary alloy systems with constant diffusion coefficient and zero-flux boundary condition have been evaluated to establish the optimum zone size of applicability. Planar, cylindrical and spherical interface geometry, and finite, singly infinite, and doubly infinite systems are treated. Two solutions are presented for each geometry, one well suited to short diffusion times, and one to long times. The effect of zone-size on the convergence of these solutions is discussed. A generalized form of the diffusion solution for doubly infinite systems is proposed.

Unnam, J.↗

Application-Program-Installer Builder

A computer program builds application programming interfaces (APIs) and related software components for installing and uninstalling application programs in any of a variety of computers and operating systems that support the Java programming language in its binary form. This program is partly similar in function to commercial (e.g., Install-Shield) software. This program is intended to enable satisfaction of a quasi-industry-standard set of requirements for a set of APIs that would enable such installation and uninstallation and that would avoid the pitfalls that are commonly encountered during installation of software. The requirements include the following: 1) Properly detecting prerequisites to an application program before performing the installation; 2) Properly registering component requirements; 3) Correctly measuring the required hard-disk space, including accounting for prerequisite components that have already been installed; and 4) Correctly uninstalling an application program. Correct uninstallation includes (1) detecting whether any component of the program to be removed is required by another program, (2) not removing that component, and (3) deleting references to requirements of the to-be-removed program for components of other programs so that those components can be properly removed at a later time.

Wolgast, Paul↗

A Loader for Executing Multi-Binary Applications on the Thinking Machines CM-5: It's Not Just for SPMD Anymore

The Thinking Machines CM-5 platform was designed to run single program, multiple data (SPMD) applications, i.e., to run a single binary across all nodes of a partition, with each node possibly operating on different data. Certain classes of applications, such as multi-disciplinary computational fluid dynamics codes, are facilitated by the ability to have subsets of the partition nodes running different binaries. In order to extend the CM-5 system software to permit such applications, a multi-program loader was developed. This system is based on the dld loader which was originally developed for workstations. This paper provides a high level description of dld, and describes how it was ported to the CM-5 to provide support for multi-binary applications. Finally, it elaborates how the loader has been used to implement the CM-5 version of MPIRUN, a portable facility for running multi-disciplinary/multi-zonal MPI (Message-Passing Interface Standard) codes.

Becker, Jeffrey C.↗

Computer control of a far infrared interferometer

A simple interface has been designed for the automatic control and data collection from a Grubb Parsons Mark III cube interferometer. A computer is used to automatically step the movable mirror on the interferometer. Data may be directly input into the computer for immediate transformation or stored for later analysis via a fast Fourier transformation. The interface is based on a commercial analog-to-digital converter having a parallel-to-serial data converter. The device can also display ASCII characters sent from the computer in parallel binary code. The system is applicable to recording interferograms having long time durations and to measuring multiple interferograms for statistical averaging.

Breecher, J.↗