Search NASA⌕ Search

SEARCH · Search NASA

Results for “Compiler Optimizations”

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 91 records · Page 5

MicroShell Minimalist Shell for Xilinx Microprocessors

MicroShell is a lightweight shell environment for engineers and software developers working with embedded microprocessors in Xilinx FPGAs. (MicroShell has also been successfully ported to run on ARM Cortex-M1 microprocessors in Actel ProASIC3 FPGAs, but without project-integration support.) Micro Shell decreases the time spent performing initial tests of field-programmable gate array (FPGA) designs, simplifies running customizable one-time-only experiments, and provides a familiar-feeling command-line interface. The program comes with a collection of useful functions and enables the designer to add an unlimited number of custom commands, which are callable from the command-line. The commands are parameterizable (using the C-based command-line parameter idiom), so the designer can use one function to exercise hardware with different values. Also, since many hardware peripherals instantiated in FPGAs have reasonably simple register-mapped I/O interfaces, the engineer can edit and view hardware parameter settings at any time without stopping the processor. MicroShell comes with a set of support scripts that interface seamlessly with Xilinx's EDK tool. Adding an instance of MicroShell to a project is as simple as marking a check box in a library configuration dialog box and specifying a software project directory. The support scripts then examine the hardware design, build design-specific functions, conditionally include processor-specific functions, and complete the compilation process. For code-size constrained designs, most of the stock functionality can be excluded from the compiled library. When all of the configurable options are removed from the binary, MicroShell has an unoptimized memory footprint of about 4.8 kB and a size-optimized footprint of about 2.3 kB. Since MicroShell allows unfettered access to all processor-accessible memory locations, it is possible to perform live patching on a running system. This can be useful, for instance, if a bug is discovered in a routine but the system cannot be rebooted: Shell allows a skilled operator to directly edit the binary executable in memory. With some forethought, MicroShell code can be located in a different memory location from custom code, permitting the custom functionality to be overwritten at any time without stopping the controlling shell.

Werne, Thomas A.↗

HAL/S-FC and HAL/S-360 compiler system program description

The compiler is a large multi-phase design and can be broken into four phases: Phase 1 inputs the source language and does a syntactic and semantic analysis generating the source listing, a file of instructions in an internal format (HALMAT) and a collection of tables to be used in subsequent phases. Phase 1.5 massages the code produced by Phase 1, performing machine independent optimization. Phase 2 inputs the HALMAT produced by Phase 1 and outputs machine language object modules in a form suitable for the OS-360 or FCOS linkage editor. Phase 3 produces the SDF tables. The four phases described are written in XPL, a language specifically designed for compiler implementation. In addition to the compiler, there is a large library containing all the routines that can be explicitly called by the source language programmer plus a large collection of routines for implementing various facilities of the language.

Source record↗

Lunar control densification with panoramic space photography.

A system of panoramic control densification is being developed to optimize production of lunar charts using Apollo 15 panoramic photography. It has been determined that such control developments may be combined with procedures for setting up stereo models for compilation on the AS-11 Analytical Stereoplotter. The procedure minimizes the number of analytically derived control points from metric photography required for model orientation and improves model-to-model fit for the compilation.

Alderman, P. K.↗

Crop-phenology and LANDSAT-based irrigated lands inventory in the high plains

Crop calendars for 1979 and 1980 were investigated in support of an effort to develop techniques for mapping the High Plains aquifer region. Optimal LANDSAT image dates for 1980 were preliminarily identified based on ESS weekly crop weather reports and 1979 ESS agricultural statistics were entered into the computer. A questionnaire was compiled and sent to ASCS county agents with the approval of the Extension Directors in each state involved. Data from returning questionnaires were tabulated and development started on a set of computer programs to allow the preparation of computer assisted graphic displays of much of the collected data.

Martinko, E. A.↗

pyCRTM: A Python Interface for the Community Radiative Transfer Model

The Community Radiative Transfer Model (CRTM) is a powerful and versatile scalar radiative transfer model for satellite data assimilation and remote sensing applications. It is implemented as an object-oriented Fortran library, enabling flexible code development and optimal runtime performance on clusters. The downsides of the Fortran interface are a steep learning curve for students and the reduced productivity of users that is typical for static compiled languages, in contrast to dynamic interpreted languages like Python. pyCRTM is a new software framework that directly interfaces the CRTM Fortran data structures and procedures in Python, leveraging both the simplicity and ease of use of Python syntax as well as the flexibility arising from the vast contemporary Python ecosystem. The goal of pyCRTM is to lower the barrier of entry for university students to learn and use the CRTM and to boost the productivity of researchers seeking to create new methods in radiative transfer and data assimilation, or seeking to apply the CRTM to study atmospheric phenomena without having to go through the pre-existing complexity of the CRTM Fortran interface.

Python↗

Application of space remote sensing technology to living marine resources in coastal zones

This paper describes a compilation of new Landsat satellite remote sensing techniques for treatment of Coastal Zone Living Marine Resource problems. The techniques have been developed over the past three to five years using optimized digital analysis procedures and evaluated in limited coastal areas of the United States. However, most of the techniques are directly applicable to other areas of the world, particularly in those areas where Landsat satellite data are available. Each technique presented herein has been documented and published separately as a NASA report within the last three years. The data required to substantiate the conclusion that 'significant new space remote sensing techniques are now available for the treatment of Coastal Zone Living Marine Resource problems' are contained within these reports and are referenced herein.

Tilton, E. L., III↗

NASA Engineering and Safety Center Technical Bulletin No. 21-02: Genesis Flight Mechanics Simulation

Genesis Flight Mechanics Simulation The NASA Engineering and Safety Center (NESC) consolidated and modernized a suite of legacy flight mechanics simulations, including the Flight Analysis and Simulation Tool (FAST), resulting in Genesis, a generic, multi-vehicle, variable-degree-of-freedom flight mechanics simulation for ascent, aerocapture, entry, descent, and landing (A2EDL) trajectory design. Genesis is more flexible, capable, and performant than FAST. It enables trajectory optimization and interactive trajectory generation. Its interoperability with Copernicus, an exo-atmospheric and interplanetary trajectory design tool, facilitates end-to-end trajectory optimization across all mission phases. Genesis is implemented in Julia, a new language for technical computing that combines the ease of use of scripting languages with the run-time performance of compiled languages.

EDL↗

Experience with custom processors in space flight applications

The Applied Physics Laboratory (APL) has developed a magnetometer instrument for a swedish satellite named Freja with launch scheduled for August 1992 on a Chinese Long March rocket. The magnetometer controller utilized a custom microprocessor designed at APL with the Genesil silicon compiler. The processor evolved from our experience with an older bit-slice design and two prior single chip efforts. The architecture of our microprocessor greatly lowered software development costs because it was optimized to provide an interactive and extensible programming environment hosted by the target hardware. Radiation tolerance of the microprocessor was also tested and was adequate for Freja's mission -- 20 kRad(Si) total dose and very infrequent latch-up and single event upset events.

Fraeman, M. E.↗

Parallelization of NAS Benchmarks for Shared Memory Multiprocessors

This paper presents our experiences of parallelizing the sequential implementation of NAS benchmarks using compiler directives on SGI Origin2000 distributed shared memory (DSM) system. Porting existing applications to new high performance parallel and distributed computing platforms is a challenging task. Ideally, a user develops a sequential version of the application, leaving the task of porting to new generations of high performance computing systems to parallelization tools and compilers. Due to the simplicity of programming shared-memory multiprocessors, compiler developers have provided various facilities to allow the users to exploit parallelism. Native compilers on SGI Origin2000 support multiprocessing directives to allow users to exploit loop-level parallelism in their programs. Additionally, supporting tools can accomplish this process automatically and present the results of parallelization to the users. We experimented with these compiler directives and supporting tools by parallelizing sequential implementation of NAS benchmarks. Results reported in this paper indicate that with minimal effort, the performance gain is comparable with the hand-parallelized, carefully optimized, message-passing implementations of the same benchmarks.

Waheed, Abdul↗

Transcriptomics and Proteomics Discussion

This presentation will cover the the basic pipelines for transcriptomics and proteomics that the GeneLab Analysis Working Groups (AWGs) have so far determined to be optimal. Basic transcriptomic pipelines will first be presented from primary analysis to higher-order systems analysis. Examples of how the data has been analyzed will be presented. Proteomics pipelines will also be presented compiled from various AWG members. Discussion will be generated from the AWG members to reach a consensus for each omic type.

Transcriptomics↗

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. This paper, Part 1 of two companion papers, discusses the fundamentals of REMS. Part 2 illustrates the methodology in more detail.

Alexandrov, Natalia M.↗

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↗

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.↗

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.↗

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↗