Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “compiler optimization”

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 271 records · Page 15

Reconfigurability in MDO Problem Synthesis

Integrating autonomous disciplines into a problem amenable to solution presents a major challenge in realistic multidisciplinary design optimization (MDO). We propose a linguistic approach to MDO problem description, formulation, and solution we call reconfigurable multidisciplinary synthesis (REMS). With assistance from computer science techniques, REMS comprises an abstract language and a collection of processes that provide a means for dynamic reasoning about MDO problems in a range of contexts. The approach may be summarized as follows. Description of disciplinary data according to the rules of a grammar, followed by lexical analysis and compilation, yields basic computational components that can be assembled into various MDO problem formulations and solution algorithms, including hybrid strategies, with relative ease. The ability to re-use the computational components is due to the special structure of the MDO problem. The range of contexts for reasoning about MDO spans tasks from error checking and derivative computation to formulation and reformulation of optimization problem statements. In highly structured contexts, reconfigurability can mean a straightforward transformation among problem formulations with a single operation. We hope that REMS will enable experimentation with a variety of problem formulations in research environments, assist in the assembly of MDO test problems, and serve as a pre-processor in computational frameworks in production environments. Part 1 of two companion papers, discusses the fundamentals of REMS. This paper, Part 2 illustrates the methodology in more detail.

Alexandrov, Natalia M.↗

A study of system requirements for Phobos/Deimos missions. Volume 4: Phase 3 results, combined missions to Mars and its satellites

Combined missions to Mars and Phobos/Deimos were considered in relation to large scientific returns at a low total cost. A matrix of all feasible major combined mission concepts was compiled. The most promising approach was selected from which a nominal mission profile was developed. A systems analysis was performed to trade off performance, configuration, and cost characteristics of candidate mission concepts. Configuration and subsystem optimization analysis were then conducted from which a baseline and an alternate program were selected. Program schedules and cost estimates were prepared for the recommended and alternate program.

Source record↗

An expert system for shuttle and satellite radar tracker scheduling

This expert system automates and optimizes radar tracker selection for shuttle missions. The expert system is written in the FORTRAN and C languages on an HP9000. It is portable to any UNIX machine having both ANSI-77 FORTRAN and C language compilers. It is a rule based expert system that selects tracking stations from the S-band and C-band radar stations and the TDRSS east and TDRSS west satellites under a variety of conditions. The expert system was prototyped on the Symbolics in the Automated Reasoning Tool (ART) and ZetaLisp. After the prototype demonstrated an acceptable automation of the process of selecting tracking stations to support the orbit determination requirements of Shuttle missions, the basic ART rules of the prototype were ported to the HP9000 computer using the CLIPS language. CLIPS is a forward-chaining rule-based expert system language written in C. Prior to the development of this expert system the selection process was a tedious manual process and expensive in terms of human resources. Manual tracking station selection required from 1 to 2 man weeks per mission; whereas the expert system can complete the selection process in about 2 hours.

Mitchell, Paul↗

Enabling Pulse-level Programming, Compilation, and Execution in XACC

Noisy gate-model quantum processing units (QPUs) are currently available from vendors over the cloud, and digital quantum programming approaches exist to run low-depth circuits on physical hardware. These digital representations are ultimately lowered to pulse-level instructions by vendor quantum control systems to affect unitary evolution representative of the submitted digital circuit. Vendors are beginning to open this pulse-level control system to the public via specified interfaces. Robust programming methodologies, software frameworks, and backend simulation technologies for this analog model of quantum computation will prove critical to advancing pulse-level control research and development. Prototypical use cases for this include error mitigation, optimal pulse control, and physics-inspired pulse construction. Here we present an extension to the XACC quantum-classical software framework that enables pulse-level programming for superconducting, gate-model quantum computers, and a novel, general, and extensible pulse-level simulation backend for XACC that scales on classical compute clusters via MPI. Our work enables custom backend Hamiltonian definitions and gate-level compilation to available pulses with a focus on performance and scalability. We end with a demonstration of this capability, and show how to use XACC for pertinent pulse-level programming tasks.

97 MATHEMATICS AND COMPUTING↗

An updated LLVM-based quantum research compiler with further OpenQASM support

Abstract Quantum computing is a rapidly growing field with the potential to change how we solve previously intractable problems. Emerging hardware is approaching a complexity that requires increasingly sophisticated programming and control. Scaffold is an older quantum programming language that was originally designed for resource estimation for far-future, large quantum machines, and ScaffCC is the corresponding LLVM-based compiler. For the first time, we provide a full and complete overview of the language itself, the compiler as well as its pass structure. While previous works Abhari et al (2015 Parallel Comput. 45 2–17), Abhari et al (2012 Scaffold: quantum programming language https://cs.princeton.edu/research/techreps/TR-934-12 ), have piecemeal descriptions of different portions of this toolchain, we provide a more full and complete description in this paper. We also introduce updates to ScaffCC including conditional measurement and multidimensional qubit arrays designed to keep in step with modern quantum assembly languages, as well as an alternate toolchain targeted at maintaining correctness and low resource count for noisy-intermediate scale quantum (NISQ) machines, and compatibility with current versions of LLVM and Clang. Our goal is to provide the research community with a functional LLVM framework for quantum program analysis, optimization, and generation of executable code.

71 CLASSICAL AND QUANTUM MECHANICS, GENERAL PHYSIC↗

Early Evaluation of Fugaku A64FX Architecture Using Climate Workloads

The Energy Exascale Earth System Model (E3SM) Project is an ongoing, state-of-the-science Earth system modeling, simulation, and prediction project that targets efficient utilization of U.S. Department of Energy’s (DOE) supercomputers to meet the science needs of the nation and the mission needs of DOE. This work focuses on our early evaluation of the A64FX architecture on Fugaku supercomputer using E3SM benchmarks. We will present results that track hardware trends, facilitate architecture comparison and the specific impact on our workload using an atmospheric model benchmark. We have two variants of the code written in Fortran and C++/Kokkos respectively which were used to collect data on a variety of CPU and GPU platforms. Furthermore, we have conducted a comparative evaluation of the compilers on the A64FX architecture and found GNU to be the best performer for our workload. Our experience so far indicates that Fugaku/A64FX shows promising energy efficiency (performance/Watt) with further performance gains possible through architecture-aware optimization efforts.

Sreepathi, Sarat↗

CTT: Tools for Fine Alignment of Flash X-ray Systems

The CTT code is a compilation of the python code that was prototyped in the interest of making a method for fine alignment of Flash X-ray Systems at the lab. It contains python code for interacting with LTT and running optimization loops using LTT simulations or ray tracing with RaySpace. It Includes classes for creating phantom objects and modular geometry objects in the simulations. It allows one to generate a random phantom that has been optimized to stay with a certain cubic volume and maximize the minimum distance between any two ball phantom centers in all projections. It was primarily made to work on ball phantoms which were simulated as Teflon spheres. It allows the alignment from some nominal position to some displaced position to simulate recovery of a real geometry from the nominal geometry of the system. Fine alignment can be done with the projections in LTT while a rough alignment is faster using rayspace. If rayspace works well for the use case it should be preferred since it is considerably faster and less resource intensive in general. Some Notes about using this code is that one will have to edit the imports for the files to get to the correct LTT path, LTT GUI path and to the CTT path when importing. This was made by using anaconda with python 3 on windows 10. The LTT code was stored in a anaconda environment which seemed to help the python find the LTT although it shouldn’t be necessary if you append the path in your code using sys.path.append(r'add the path you want here’). The sys.path.append method is a quick way to give your python code access to a given folder when running it (such as LTT or CTT). Note that since the code was originally made with paths for a specific machine that a new user will have to edit those paths to make it work in all the files that use the old paths. This is somewhat tedious but will be required to run the code on a new machine. The methodology used to run and make these notebooks starts with opening a command prompt as administrator in windows 10. After this one would activate the anaconda environment in the appropriate directory using “conda activate myenv” in the command prompt. After this open a jupyter-notebook using the keyword “jupyter-notebook". After that a notebook should open in a browser. Note that some libraries used may not come with anaconda so those may have to be installed. There shouldn’t be much though since the main things used are scipy, numpy, matplotlib, and LTT. LTTQuicksetup also requires some paths that will be specific to the computer so that should be changed as well.

42 ENGINEERING↗

Human factors in incident reporting

The paper proposes a cooperative research effort be undertaken by academic institutions and industry organizations toward the compilation of a human factors data base in conjunction with technical information. Team members in any discipline can benefit and learn from observing positive examples of decision making and performance by crews under stressful or less than optimal circumstances. The opportunity to note trends in interpersonal and interactive behaviors and to categorize them is terms of more or less desirable outcomes should not be missed.

Jones, S. G.↗

ChemComp: Compiling and Computing with Chemical Reaction Networks

The exponential growth in computing demands driven by scientific computing, data analytics, and artificial intelligence is pushing conventional CMOS-based high-performance computing systems to their physical and energy efficiency limits. As we approach the era of post-exascale computing, disruptive approaches are necessary to overcome these barriers and achieve substantial gains in energy efficiency. Analog and hybrid digital-analog computing systems have emerged as promising alternatives, offering the potential for orders-of-magnitude improvements in efficiency. Among these, biochemical computing stands out as a novel paradigm capable of leveraging the natural efficiency of chemical reactions, which have shown promise in solving optimization problems by converging to steady states. By scaling up reaction networks or reaction vessel sizes, biochemical systems present an opportunity to meet the high-performance demands of modern computing tasks. Despite their promise, significant theoretical and practical challenges remain, particularly in formulating and mapping computational problems to chemical reaction networks (CRNs) and designing viable biochemical computing devices. This paper addresses these challenges by introducing new ideas to ChemComp, a compilation and emulation framework for chemical computation. This work describes the mechanisms through which solutions to ordinary differential equations (ODEs) that can be represented as CRN systems can be achieved. Furthermore, we explain the design principles of an ODE dialect implemented as a multi-level intermediate representation (MLIR) compiler extension that will be coupled with existing infrastructure. We demonstrate the potential of our framework through a case study emulating a simplified chemical reservoir computing device. This work establishes foundational tools and methodologies necessary to harness the computational power of chemistry, paving the way for the development of energy-efficient, high-performance computing systems tailored to contemporary and future computational needs.

Bohm Agostini, Nicolas↗

Synthetic genetic circuits as a means of reprogramming plant roots

We report the shape of a plant’s root system influences its ability to reach essential nutrients in the soil and to acquire water during drought. Progress in engineering plant roots to optimize water and nutrient acquisition has been limited by our capacity to design and build genetic programs that alter root growth in a predictable manner. We developed a collection of synthetic transcriptional regulators for plants that can be compiled to create genetic circuits. These circuits control gene expression by performing Boolean logic operations and can be used to predictably alter root structure. This work demonstrates the potential of synthetic genetic circuits to control gene expression across tissues and reprogram plant growth.

59 BASIC BIOLOGICAL SCIENCES↗

Systems analysis - Key to NASA's data system planning

Critical steps in the systems analysis process for NASA's data system planning are: (1) compilation of future user/mission requirements, (2) development of alternative overall data system concepts which satisfy requirements, (3) assessment of future development and availability of data system technology, and (4) cost/performance tradeoff studies of the alternative concepts for systems optimization. Tasks within the NEEDS (NASA End-to-End Data System) Program, which correspond to the critical steps in this systems analysis process are examined.

Nelson, R. W.↗

IBPSA Project 2 BOPTEST: An update on the test cases available in the framework for testing advanced control strategies in buildings

Project 2 develops software infrastructure, test cases, and extensions for the Building Optimization Testing Framework (BOPTEST) to address the expanding needs of building and urban energy system controls through open international collaboration. This paper provides an overview of the new test cases available as of BOPTEST version 0.7.1. Each test case is developed using open-source Modelica libraries and Spawn of EnergyPlus, enabling the creation of high-fidelity building models that incorporate envelope dynamics, Heating Ventilation and Air Conditioning (HVAC) systems, and explicit control representations. Currently, eight test cases are available, with five additional cases under development. These test cases cover a wide range of climates, building types, and HVAC systems. This paper compiles and summarizes test case descriptions, cites original manuscripts that developed them for a more detailed description, and reports baseline control performance metrics. Furthermore, two example applications are presented: one illustrating different levels of control, from supervisory to low-level, and another demonstrating how Model Predictive Control (MPC) solutions must be adapted from continuous to integer to control some building actuators.

Zanetti, Ettore↗

i-SAIRAS '90; Proceedings of the International Symposium on Artificial Intelligence, Robotics and Automation in Space, Kobe, Japan, Nov. 18-20, 1990

The present conference on artificial intelligence (AI), robotics, and automation in space encompasses robot systems, lunar and planetary robots, advanced processing, expert systems, knowledge bases, issues of operation and management, manipulator control, and on-orbit service. Specific issues addressed include fundamental research in AI at NASA, the FTS dexterous telerobot, a target-capture experiment by a free-flying robot, the NASA Planetary Rover Program, the Katydid system for compiling KEE applications to Ada, and speech recognition for robots. Also addressed are a knowledge base for real-time diagnosis, a pilot-in-the-loop simulation of an orbital docking maneuver, intelligent perturbation algorithms for space scheduling optimization, a fuzzy control method for a space manipulator system, hyperredundant manipulator applications, robotic servicing of EOS instruments, and a summary of astronaut inputs on automation and robotics for the Space Station Freedom.

Source record↗

Automatic Generation of Algorithms for the Statistical Analysis of Planetary Nebulae Images

Analyzing data sets collected in experiments or by observations is a Core scientific activity. Typically, experimentd and observational data are &aught with uncertainty, and the analysis is based on a statistical model of the conjectured underlying processes, The large data volumes collected by modern instruments make computer support indispensible for this. Consequently, scientists spend significant amounts of their time with the development and refinement of the data analysis programs. AutoBayes [GF+02, FS03] is a fully automatic synthesis system for generating statistical data analysis programs. Externally, it looks like a compiler: it takes an abstract problem specification and translates it into executable code. Its input is a concise description of a data analysis problem in the form of a statistical model as shown in Figure 1; its output is optimized and fully documented C/C++ code which can be linked dynamically into the Matlab and Octave environments. Internally, however, it is quite different: AutoBayes derives a customized algorithm implementing the given model using a schema-based process, and then further refines and optimizes the algorithm into code. A schema is a parameterized code template with associated semantic constraints which define and restrict the template s applicability. The schema parameters are instantiated in a problem-specific way during synthesis as AutoBayes checks the constraints against the original model or, recursively, against emerging sub-problems. AutoBayes schema library contains problem decomposition operators (which are justified by theorems in a formal logic in the domain of Bayesian networks) as well as machine learning algorithms (e.g., EM, k-Means) and nu- meric optimization methods (e.g., Nelder-Mead simplex, conjugate gradient). AutoBayes augments this schema-based approach by symbolic computation to derive closed-form solutions whenever possible. This is a major advantage over other statistical data analysis systems which use numerical approximations even in cases where closed-form solutions exist. AutoBayes is implemented in Prolog and comprises approximately 75.000 lines of code. In this paper, we take one typical scientific data analysis problem-analyzing planetary nebulae images taken by the Hubble Space Telescope-and show how AutoBayes can be used to automate the implementation of the necessary anal- ysis programs. We initially follow the analysis described by Knuth and Hajian [KHO2] and use AutoBayes to derive code for the published models. We show the details of the code derivation process, including the symbolic computations and automatic integration of library procedures, and compare the results of the automatically generated and manually implemented code. We then go beyond the original analysis and use AutoBayes to derive code for a simple image segmentation procedure based on a mixture model which can be used to automate a manual preproceesing step. Finally, we combine the original approach with the simple segmentation which yields a more detailed analysis. This also demonstrates that AutoBayes makes it easy to combine different aspects of data analysis.

Fischer, Bernd↗

Quantum Search Compiler (Qsearch) v2.0

Quantum Gate Synthesis is the process of taking a desired quantum gate operation, in this case specified as a unitary matrix, and decomposing it into a list of operations that can actually be performed on a quantum computer. Qsearch is an implementation of a quantum synthesis algorithm based on combining A* search with numerical optimization. It is designed to minimize CNOT count at the expense of having a long runtime. It produces particularly efficient quantum circuits in terms of CNOT count, up until about 4 qubits. It is generally impractical to run Qsearch on circuits with more than 4 qubits, but it can be used as a subroutine in algorithms designed to work with these larger circuits. Qsearch takes the form of a Python package, taking advantage of Numpy and Scipy, with part of the package written in Rust and taking advantage of OpenBLAS, NLOPT, and Google Ceres for faster runtime.

Lancu, Costin↗

Fertilizer management for global ammonia emission reduction

Crop production is a large source of atmospheric ammonia (NH 3 ), which poses risks to air quality, human health and ecosystems. However, estimating global NH 3 emissions from croplands is subject to uncertainties because of data limitations, thereby limiting the accurate identification of mitigation options and efficacy. In this report we develop a machine learning model for generating crop-specific and spatially explicit NH 3 emission factors globally (5-arcmin resolution) based on a compiled dataset of field observations. We show that global NH 3 emissions from rice, wheat and maize fields in 2018 were 4.3 ± 1.0 Tg N yr -1 , lower than previous estimates that did not fully consider fertilizer management practices. Furthermore, spatially optimizing fertilizer management, as guided by the machine learning model, has the potential to reduce the NH3 emissions by about 38% (1.6 ± 0.4 Tg N yr -1 ) without altering total fertilizer nitrogen inputs. Specifically, we estimate potential NH3 emissions reductions of 47% (44–56%) for rice, 27% (24–28%) for maize and 26% (20–28%) for wheat cultivation, respectively. Under future climate change scenarios, we estimate that NH3 emissions could increase by 4.0 ± 2.7% under SSP1–2.6 and 5.5 ± 5.7% under SSP5–8.5 by 2030–2060. However, targeted fertilizer management has the potential to mitigate these increases.

54 ENVIRONMENTAL SCIENCES↗

ChemComp: A Compilation Framework for Computing with Chemical Reaction Networks

The acceleration of scientific computation, data analytics, and artificial intelligence is driving a surge in computational requirements. Yet, state-of-the-art high-performance computing systems are approaching physical limitations that impede further significant improvements in energy efficiency. As we move towards post-exascale computing systems, innovative approaches are necessary to overcome this barrier in power consumption. Novel analog and hybrid digital-analog architectures hold promise for enhancing energy efficiency by several orders of magnitude. Biochemical computation stands out among the various solutions being explored due to its potential to enable new classes of devices with immense computational capabilities. These devices can capitalize on the inherent efficacy of biological cells in solving optimization problems and are scalable through increasing reaction system size or vessel capacity, potentially satisfying scientific computing's high-performance requirements. Nonetheless, several theoretical and practical limitations persist, including problem formulation and mapping to chemical reaction networks (CRNs) and implementation of actual CRN devices. In this paper, we propose a framework for biochemical computation using systems chemistry. We present the initial components of our approach: an abstract chemical reaction dialect implemented as a multi-level intermediate representation (MLIR) compiler extension and a pathway to represent mathematical problems with CRNs. To showcase the potential of this approach, we emulate a simplified chemical reservoir device. This work lays the groundwork for leveraging chemistry's computing potential in creating energy-efficient, high-performance computing systems tailored to contemporary computational needs.

artificial intelligence↗

QECC-Synth: A Layout Synthesizer for Quantum Error Correction Codes on Sparse Architectures

Quantum Error Correction (QEC) codes are essential for achieving fault-tolerant quantum computing (FTQC). However, their implementation faces significant challenges due to disparity between required dense qubit connectivity and sparse hardware architectures. Current approaches often either underutilize QEC circuit features or focus on manual designs tailored to specific codes and architectures, limiting their capability and generality. In response, we introduce QECC-Synth, an automated compiler for QEC code implementation that addresses these challenges. We leverage the ancilla bridge technique tailored to the requirements of QEC circuits and introduces a systematic classification of its design space flexibilities. We then formalize this problem using the MaxSAT framework to optimize these flexibilities. Evaluation shows that our method significantly outperforms existing methods while demonstrating broader applicability across diverse QEC codes and hardware architectures.

Yin, Keyi [University of California, San Diego]↗