Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “reference language”

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

ISS Double-Gimbaled CMG Subsystem Simulation Using the Agile Development Method

This paper presents an evolutionary approach in simulating a cluster of 4 Control Moment Gyros (CMG) on the International Space Station (ISS) using a common sense approach (the agile development method) for concurrent mathematical modeling and simulation of the CMG subsystem. This simulation is part of Training systems for the 21st Century simulator which will provide training for crew members, instructors, and flight controllers. The basic idea of how the CMGs on the space station are used for its non-propulsive attitude control is briefly explained to set up the context for simulating a CMG subsystem. Next different reference frames and the detailed equations of motion (EOM) for multiple double-gimbal variable-speed control moment gyroscopes (DGVs) are presented. Fixing some of the terms in the EOM becomes the special case EOM for ISS's double-gimbaled fixed speed CMGs. CMG simulation development using the agile development method is presented in which customer's requirements and solutions evolve through iterative analysis, design, coding, unit testing and acceptance testing. At the end of the iteration a set of features implemented in that iteration are demonstrated to the flight controllers thus creating a short feedback loop and helping in creating adaptive development cycles. The unified modeling language (UML) tool is used in illustrating the user stories, class designs and sequence diagrams. This incremental development approach of mathematical modeling and simulating the CMG subsystem involved the development team and the customer early on, thus improving the quality of the working CMG system in each iteration and helping the team to accurately predict the cost, schedule and delivery of the software.

Inampudi, Ravi↗

Developing and Implementing a Process to Verify and Validate the NASA InSight Mission’s Instrument Command Products

The NASA InSight Mars lander is a roboticspacecraft which is investigating the interior structure of Marsthrough a series of seismological measurements andexperiments. Much of the commanding of activities performedby the instruments was done using ‘blocks’ – reusable functionswritten in Virtual Machine Language stored onboard thespacecraft– and sequences (series of commands) that werecreated by teams to operate their instruments. It was vital thatthese blocks and sequences (collectively called commandproducts) be thoroughly examined prior to onboard executionusing a comprehensive test program to reduce risk to thespacecraft and instruments and ensure smooth operations onthe surface of Mars. The Verification and Validation (V&V)process that was designed and implemented during the monthsleading up to InSight’s launch and landing successfullyuncovered a number of issues that could have causedoperational delays or impacted hardware. The process alsohelped adapt ground tools to better model onboard activities,create operational principles to avoid unintended consequencesduring flight, and generate a reference database for commandproduct use during operations. This allowed InSight to meet itssurface operations goals in the desired timeframe. This paperdescribes the development, implementation and results ofInSight’s command product V&V process, its contribution tomission success, and challenges faced.

Cloutier, Kyle↗

Apex Reference Manual 3.0 Beta

Apex is a toolkit for constructing software that behaves intelligently and responsively in demanding task environments. Reflecting its origin at NASA where Apex continues to be developed, current applications include: a) Providing autonomous mission management and tactical control capabilities for unmanned aerial vehicles including an autonomous surveillance helicopter and a simulation prototype of an unmanned fixed-wing aircraft to be used for wildfire mapping; b) Simulating human air traffic controllers, pilots and astronauts to help predict how people might respond to changes in equipment or procedures; and c) Predicting the precise duration and sequence of routine human behaviors based on a human-computer interaction engineering technique called CPM-GOMS. Among Apex s components are a set of implemented reasoning services, such as those for reactive planning and temporal pattern recognition; a software architecture that embeds and integrates these services and allows additional reasoning elements to be added as extensions; a formal language for specifying agent knowledge; a simulation environment to facilitate prototyping and analysis; and Sherpa, a set of tools for visualizing autonomy logic and runtime behavior. In combination, these are meant to provide a flexible and usable framework for creating, testing, and deploying intelligent agent software. Overall, our goal in developing Apex is to lower economic barriers to developing intelligent software agents. New ideas about how to extend or modify the system are evaluated in terms of their impact in reducing the time, expertise, and inventiveness required to build and maintain applications. For example, potential enhancements to the AI reasoning capabilities in the system are reviewed not only for usefulness and distinctiveness, but also for their impact on the readability and general usability of Apex s behavior representation language (PDL) and on the transparency of resulting behavior. A second central part of our approach is to iteratively refine Apex based on lessons learned from as diverse a set of applications as possible. Many applications have been developed by users outside the core development team including engineers, researchers, and students. Usability is thus a central concern for every aspect of Apex visible to a user, including PDL, Sherpa, the Apex installation process, APIs, and user documentation. Apex users vary in their areas of expertise and in their familiarity with autonomy technology. Focusing on usability, a development philosophy summarized by the project motto "Usable Autonomy," has been important part of enabling diverse users to employ Apex successfully and to provide feedback needed to guide iterative, user-centered refinement.

Freed, Michael A.↗

A computerized symbolic integration technique for development of triangular and quadrilateral composite shallow-shell finite elements

Computerized symbolic integration was used in conjunction with group-theoretic techniques to obtain analytic expressions for the stiffness, geometric stiffness, consistent mass, and consistent load matrices of composite shallow shell structural elements. The elements are shear flexible and have variable curvature. A stiffness (displacement) formulation was used with the fundamental unknowns consisting of both the displacement and rotation components of the reference surface of the shell. The triangular elements have six and ten nodes; the quadrilateral elements have four and eight nodes and can have internal degrees of freedom associated with displacement modes which vanish along the edges of the element (bubble modes). The stiffness, geometric stiffness, consistent mass, and consistent load coefficients are expressed as linear combinations of integrals (over the element domain) whose integrands are products of shape functions and their derivatives. The evaluation of the elemental matrices is divided into two separate problems - determination of the coefficients in the linear combination and evaluation of the integrals. The integrals are performed symbolically by using the symbolic-and-algebraic-manipulation language MACSYMA. The efficiency of using symbolic integration in the element development is demonstrated by comparing the number of floating-point arithmetic operations required in this approach with those required by a commonly used numerical quadrature technique.

Anderson, C. M.↗

Codon2Vec v1.0

Background: Codon2Vec is an embedding neural network that predicts 'high' or 'low' gene expression directly from the protein-coding sequences. Embedding neural networks are commonly used for natural language processing (NLP) applications. Analogous to how an English sentence is a string of words, a gene can be thought of as a string of codons. Similar to how NLP neural networks model English sentences as a non-random sequence of words, we considered a coding sequence as a non-random non-overlapping array of codons (k-mers of length = 3). Value Proposition: - Codon2Vec achieved a high median AUC-ROC score of 83.8% when trained and applied to transcriptomic data from 300 fungal species - Unlike Codo2Vec, conventional methods predicting for expression based on codon usage rely on a priori knowledge of optimal codons or a set of reference genes. - Unlike Codon2vec, these methods do not account for the effect of codon order on gene expression. - Codon2Vec neural network bypasses the need for artisanal feature selection step that is necessary for traditional machine learning models.

Wint, Rhondene↗

Trajectory Specification for High-Capacity Air Traffic Control

In the current air traffic management system, the fundamental limitation on airspace capacity is the cognitive ability of human air traffic controllers to maintain safe separation with high reliability. The doubling or tripling of airspace capacity that will be needed over the next couple of decades will require that tactical separation be at least partially automated. Standardized conflict-free four-dimensional trajectory assignment will be needed to accomplish that objective. A trajectory specification format based on the Extensible Markup Language is proposed for that purpose. This format can be used to downlink a trajectory request, which can then be checked on the ground for conflicts and approved or modified, if necessary, then uplinked as the assigned trajectory. The horizontal path is specified as a series of geodetic waypoints connected by great circles, and the great-circle segments are connected by turns of specified radius. Vertical profiles for climb and descent are specified as low-order polynomial functions of along-track position, which is itself specified as a function of time. Flight technical error tolerances in the along-track, cross-track, and vertical axes define a bounding space around the reference trajectory, and conformance will guarantee the required separation for a period of time known as the conflict time horizon. An important safety benefit of this regimen is that the traffic will be able to fly free of conflicts for at least several minutes even if all ground systems and the entire communication infrastructure fail. Periodic updates in the along-track axis will adjust for errors in the predicted along-track winds.

Paielli, Russell A.↗

Viability of Small Dimension Crew Quarters for Surface Habitation

During early planning for the Artemis program’s sustained phase of lunar activity, NASA planners have been held to work towards a NASA reference lunar lander concept. With this activity taking place prior to the awarding of a lander contract, NASA planners cannot assume which of several potential landers will be available. This has limited habitation team engineers to a 12-metric ton mass limit for the reference concept of the lunar Surface Habitat. Consequently, minimal approaches have been applied to many habitat systems and it is important to determine acceptable volume for crew quarters. A number of both NASA and non-NASA surface habitat concepts have proposed relatively small crew quarters due to this constraint. Consequently, there is a need to collect objective test data to confirm or refute the validity of small crew quarters. NASA-STD-3001 is looked to for guidance in its many standards but offers little to no help. While prior versions called for private habitation, the current version – Revision B – calls for “individual privacy” to “accommodate social retreat.” Proposed Revision C modifications change the language slightly to “accommodate sleep and social retreat.” This is not enough guidance to determine the size of a crew quarters or even its capabilities. Unfortunately, only a small number of US spacecraft have included crew quarters, primarily the International Space Station and the Skylab Space Station. The space shuttle orbiter sometimes flew a set of private bunks that some might consider a crew quarters. All of these are dramatically smaller than US standards for minimum jail cells. The first opportunity for NASA to test a small crew quarters in a surface habitat application has been created through the Exploration Atmospheres test series, which is evaluating human performance under reduced cabin pressures. The test is converting the 20-Foot Vacuum Chamber at Johnson Space Center into a habitat, with the lower level outfitted as an EVA test area and the upper two levels for human habitation. The test will place eight people (six test subjects and two technicians) inside the chamber for eleven days. All eight will sleep in private quarters during the test. Volume limitations in the chamber forced extremely small crew quarters, measuring approximately 2 meters in length, 0.85 meters in height, and 0.9 meters in width. The test cabin pressure of 8.2 psi and elevated oxygen also introduces significant material limitations, limiting outfitting options. Nonetheless, the crew quarters design requirements were to accommodate visual separation, auditory separation, olfactory separation, tactile separation, air flow control, lighting control, single person personal computing, physical work surface access, sleep accommodations, non-sleep rest/relaxation, meditation, stretching, two-person meetings, snacking, changing clothes, viewing appearance, video communication, and audio communication. This paper will detail the acceptability of the crew quarters as measured in the October 2021 Exploration Atmosphere test. Based on this data, the viability of the type of crew quarters used in the 20 Foot Chamber will be assessed. Design recommendations for a 30-60-day Surface Habitat crew quarters will be provided, along with recommendations for future testing.

Crew Quarters↗

Classification of River Catchments in the Contiguous United States: Code, Dataset, Similarity Patterns, and Resulting Classes

This dataset serves as supplementary information for the paper by Ciulla F. and Varadharajan C. A Network Approach for Multiscale Catchment Classification using Traits (see reference 1). It contains environmental and physical catchment traits, such as temperatures, precipitation, land use and human interference, from 9067 sites across the contiguous United States (CONUS). The purpose of this dataset is to provide information for a better trait-based categorization of river catchments in the CONUS using networks as an analytical tool. The traits variables match the ones present in the GAGES-II dataset and the preprocessing steps are described in the Methods section (processed_dataset.csv). Additionally we include the topologies (nodes, edges and clusters, also referred as classes) of the catchment network and traits network generated by said dataset (csv and json files). A series of tables support the information carried by the network providing more detailed descriptions of cluster components (SI1.pdf). A summary of all the plots of clusters of catchments with at least 50 nodes is provided (SI2.pdf). The characteristic traits for each cluster of catchments is presented as z-score (traits_categories_zscores_per_catchment_class.csv). The link to the hydrological behavior of clusters of catchments is displayed by boxplots, each describing a particular river discharge index (SI3.pdf). Both csv and json files can be read by common text editors but the data contained into them can be better handled using programming languages like python and database oriented libraries like pandas. Pdf files can be read by any pdf reader software.[02-23-2024] Update: The code and datasets necessary to reproduce the results of the study are available as a zipped repository (code_datasets_catchments_similarity.zip).

54 ENVIRONMENTAL SCIENCES↗

Application of the informational reference system OZhUR to the automated processing of data from satellites of the Kosmos series

The structure and potential of the information reference system OZhUR designed for the automated data processing systems of scientific space vehicles (SV) is considered. The system OZhUR ensures control of the extraction phase of processing with respect to a concrete SV and the exchange of data between phases.The practical application of the system OZhUR is exemplified in the construction of a data processing system for satellites of the Cosmos series. As a result of automating the operations of exchange and control, the volume of manual preparation of data is significantly reduced, and there is no longer any need for individual logs which fix the status of data processing. The system Ozhur is included in the automated data processing system Nauka which is realized in language PL-1 in a binary one-address system one-state (BOS OS) electronic computer.

Pokras, V. M.↗

Presentation planning using an integrated knowledge base

A description is given of user interface research aimed at bringing together multiple input and output modes in a way that handles mixed mode input (commands, menus, forms, natural language), interacts with a diverse collection of underlying software utilities in a uniform way, and presents the results through a combination of output modes including natural language text, maps, charts and graphs. The system, Integrated Interfaces, derives much of its ability to interact uniformly with the user and the underlying services and to build its presentations, from the information present in a central knowledge base. This knowledge base integrates models of the application domain (Navy ships in the Pacific region, in the current demonstration version); the structure of visual displays and their graphical features; the underlying services (data bases and expert systems); and interface functions. The emphasis is on a presentation planner that uses the knowledge base to produce multi-modal output. There has been a flurry of recent work in user interface management systems. (Several recent examples are listed in the references). Existing work is characterized by an attempt to relieve the software designer of the burden of handcrafting an interface for each application. The work has generally focused on intelligently handling input. This paper deals with the other end of the pipeline - presentations.

Arens, Yigal↗

Harnessing Artificial Intelligence for Medical Diagnosis and Treatment During Space Exploration Missions

From May 8th to June 9th, 2023, I had the opportunity to participate in an experiential learning experience at Johnson Space Center in Houston, TX with Exploration Medical Capability (ExMC), an element of the NASA Human Research Program. During this research experience, I was not only able to work on the above titled research project, but also gain an immense exposure to the field of aerospace medicine, make numerous connections within the field, tour NASA facilities, as well as travel to the Aerospace Medical Association Annual Conference (AsMA) in New Orleans. To briefly introduce my project, it is well understood that the medical capabilities available to crew medical officers (CMOs) on the International Space Station will be different than the capabilities available and needed during deep space exploration missions to the Moon, Mars, and beyond. Ground support is particularly limited due to distance, communication delays (or lack of communication), and lack of resupply. Therefore, to support medical care by CMOs on these missions, robust clinical decision support systems (CDSSs) must be designed. The recent publication and public launch of generative artificial intelligence (AI) tools based upon large language models (LLM) such as ChatGPT provides the opportunity to create a smart assistant for onboard triage, diagnosis, and treatment of medical conditions. Ultimately, the overall purpose of the project was to research what AI tools currently exist or are in development, and to see how they might be implemented onboard during exploration class spaceflights of the future. The ExMC element is actively developing several tools to be used in preparation for and during deep space exploration missions. One of those tools, known as IMPACT, is a probabilistic risk assessment model which can be used to propose a desired medical system (based on mass and volume) and suggest the clinical outcomes likely to occur for a design reference mission (DRM). The group recently presented the IMPACT model and a DRM of interest titled “Modified Long Duration Lunar Orbital and Lunar Surface” (mLDLOLS) at the recent AsMA conference. The mLDLOLS mock mission is a 9 month and 6-day deep space exploration mission consisting of time in Moon’s orbit (3 months on the Gateway space station), on the lunar surface (3 months within habitat), and another 3 months on Gateway before return to Earth. For this DRM, IMPACT ultimately outlined a preferred medical system that was then associated with medical conditions considered to be most likely based on frequency, most likely to cause astronaut task time loss (TTL), most likely to cause return to definitive care (RTDC), and most likely cause loss of crew life (LOCL). IMPACT also highlighted the medical capabilities/skills that would be required to care for those medical conditions, such as performing a history of present illness or musculoskeletal exam with ultrasound. The primary objective of the project was to perform a survey of the AI tools and systems applicable to the conditions outlined for the proposed mLDLOLS mission. Using PubMed (including most relevant MeSH terms) and Google Scholar, we then created a robust annotated bibliography organized by condition. The 56-page and over 500 reference annotated bibliography was subsequently used to create a review outline that would become the basis for drafting of a future publication. For the review outline, we took those medical conditions researched within the annotated bibliography (condition-based approach) and deployed a systems-based approach, combining those medical conditions and related tools into ten categories. These categories included general/all-purpose CDSSs, tools to diagnose or manage respiratory, dermatologic, neurologic, auditory and vestibular, ophthalmic, musculoskeletal, infection-associated, and gynecologic conditions, as well as tools that could be deployed in the setting of trauma/emergency. With the completion of the 30-page outline, we then began drafting the review paper. To conclude the research experience, I presented the findings from our survey to the ExMC Clinical and Science team. With these objectives, I ultimately learned about the number of AI tools that exist today to assist medical professionals with the triage, diagnosis, and management of several medical conditions. These tools can span from chatbot assistants to help triage knee pain to vision transformer models that can identify ophthalmic conditions based on ocular surface images captured with a cell phone. We also highlighted the current gaps that exist in the literature alongside the advancements that are needed to make the desired CDSS for deep space exploration missions. With this experience, I certainly confirmed an existing career goal and identified several additional skills needed to become an aerospace medical doctor including knowledge of critical care in an extreme medicine setting, aerospace engineering and human integration systems, artificial intelligence, machine learning, and risk models. I also identified numerous transferable skills for this career goal including the basic knowledge of medicine (MD), deployment of the scientific method for critical thought about new scientific questions (PhD), review of published literature, including creating an annotated bibliography (PhD), as well as detailed scientific writing (PhD). The results of my research will likely guide the design of an all-encompassing onboard medical assistant for use during deep space exploration missions of the future. I plan on sharing the outcomes from this experience with my peers at a student seminar in the Fall semester on August 30th. During the seminar, I will detail the project, my experience at NASA and AsMA, as well as offer best practice guidelines for students entertaining similar experiences or careers. In conclusion, I would like to thank the WVU School of Medicine, Research and Graduate Education office, as well as NASA ExMC for the unwavering support of this life-changing experience.

Ryan A. Lacinski↗

QCalEval: Benchmarking Vision-Language Models for Quantum Calibration Plot Understanding

Quantum computing calibration depends on interpreting experimental data, and calibration plots provide the most universal human-readable representation for this task, yet no systematic evaluation exists of how well vision-language models (VLMs) interpret them. We introduce QCalEval, the first VLM benchmark for quantum calibration plots: 243 samples across 87 scenario types from 22 experiment families, spanning superconducting qubits and neutral atoms, evaluated on six question types in both zero-shot and in-context learning settings. The best general-purpose zero-shot model reaches a mean score of 72.3, and many open-weight models degrade under multi-image in-context learning, whereas frontier closed models improve substantially. A supervised fine-tuning ablation at the 9-billion-parameter scale shows that SFT improves zero-shot performance but cannot close the multimodal in-context learning gap. As a reference case study, we release NVIDIA Ising Calibration 1, an open-weight model based on Qwen3.5-35B-A3B that reaches 74.7 zero-shot average score.

Cao, Shuxiang↗

Formal Methods in the Development of Highly Assured Software for Unmanned Aircraft Systems

In traditional software development methodologies, operational and functional requirements of systems are often specified in structured natural language notations. These restricted notations provide good documentation support, but only provide limited support for semantic analysis. These notations are generally not rich enough to unambiguously specify the requirements of safety-critical systems that, for example, involve complex numerical computations or that interact with the physical environment. Examples of these safety-critical systems are autonomous vehicles such as unmanned aircraft systems. This talk advocates the use of expressive formal logics, such as higher-order logic, to specify the operational and functional requirement of unmanned systems and to prove the correctness of these requirements. Semantic analysis of requirements written in higher-order logic is supported through the use of interactive theorem provers. Formal models serve as ideal reference implementations of functional requirements. Hence, formal logics enable software validation techniques where software implementations can be checked against functional requirements in a mechanical way. The Formal Methods group in the Safety-Critical Avionics Systems Branch at NASA Langley Research Center has conducted research on the development and application of formal verification techniques to safety-critical applications of interest to NASA for more than 30 years. This talk illustrates the use of formal methods in the development of highly-assured autonomous unmanned aircraft systems.

Formal Methods↗

The Goddard Space Flight Center (GSFC) robotics technology testbed

Much of the technology planned for use in NASA's Flight Telerobotic Servicer (FTS) and the Demonstration Test Flight (DTF) is relatively new and untested. To provide the answers needed to design safe, reliable, and fully functional robotics for flight, NASA/GSFC is developing a robotics technology testbed for research of issues such as zero-g robot control, dual arm teleoperation, simulations, and hierarchical control using a high level programming language. The testbed will be used to investigate these high risk technologies required for the FTS and DTF projects. The robotics technology testbed is centered around the dual arm teleoperation of a pair of 7 degree-of-freedom (DOF) manipulators, each with their own 6-DOF mini-master hand controllers. Several levels of safety are implemented using the control processor, a separate watchdog computer, and other low level features. High speed input/output ports allow the control processor to interface to a simulation workstation: all or part of the testbed hardware can be used in real time dynamic simulation of the testbed operations, allowing a quick and safe means for testing new control strategies. The NASA/National Bureau of Standards Standard Reference Model for Telerobot Control System Architecture (NASREM) hierarchical control scheme, is being used as the reference standard for system design. All software developed for the testbed, excluding some of simulation workstation software, is being developed in Ada. The testbed is being developed in phases. The first phase, which is nearing completion, and highlights future developments is described.

Schnurr, Rick↗

Imaging for Hypersonic Experimental Aeroheating Testing (IHEAT) Version 4.0: User Manual

The IHEAT v4.0 software is a data reduction code for global thermography data acquired in the NASA Langley Aerothermodynamics Laboratory (LAL) hypersonic wind tunnels. IHEAT uses red and green color-intensity data from two-dimensional images of wind tunnel models to compute temperatures and heat-transfer rates using a semi-infinite, one-dimensional heat transfer approximation at each image pixel. Multiple automated tools in IHEAT v4.0 decrease the time required to reduce the data from a phosphor thermography wind tunnel run. Data at one or all of the image pixel locations can be exported to computer files for further analysis. The prior version of IHEAT, v3.2, was written in PV-WAVE® (now owned by Rogue Wave® Software) in 1994 and was limited in functionality to fit within the memory constraints of the available computers at the time. IHEAT v4.0 is written in MATLAB® by MathWorks® and contains several new features that leverage the increase in available memory of the current computers. A Piecewise tool permits the user to extract data along a segmented line cut that can follow interesting features in the image better than the single, straight line cuts that were possible with the legacy Length and Profile tools. The new Load Run and Batch tools facilitate batch processing by loading in all of the input files and images for a run at the same time. Load Run permits the user to process the available run images manually, while Batch automatically saves heat transfer data from all of the images based on the analysis previously performed on a single frame. IHEAT v4.0 also can automatically calculate the temporal collapse of reference line cuts from the time history heating data for a run to indicate the appropriate frame to reduce for each run. The IHEAT v4.0 source code was compiled into a standalone executable file that can be accessed remotely from several computers with different operating systems, simultaneously. The software is run through the MATLAB® Compiler Runtime engine, and therefore, IHEAT does not require a software license to run. Any software commands executed in the IHEAT v4.0 code will not affect other similar applications running on the same machine. Similarly, changes to the parent software do not affect a compiled code. These features of IHEAT v4.0 are improvements over the legacy v3.2 code, which required regular maintenance to avoid losing functionality as the PVWAVE ® programming language was upgraded.

Mason, Michelle L.↗

Computing the Properties of Matter with Leadership Computing Resources (Closeout Report for DE-SC0018121)

In order to add more capabilities to Halide, we have designed a new framework called Tiramisu and integrated this framework into Halide. Since Tiramisu enables Halide to target heterogeneous architectures, our development efforts have been refocused on Tiramisu. Most high-performance computer systems today are complex and increasingly heterogeneous; they may have CPUs, GPUs and FPGAs. Achieving best performance requires taking full advantage of all these different architectures. To address this issue, we have designed Tiramisu, an optimization framework that enables Halide (and other DSLs) to target heterogeneous architectures. Tiramisu is an optimization framework that takes as input a high level, architecture-independent representation of code and a set of scheduling and data mapping commands that guide code transformation. The input can either be generated by a domain-specific language (DSL) compiler such as Halide or directly written by a programmer. Tiramisu then applies the user-specified code and data-layout transformations and generates an architecture-specific, low-level intermediate representation (IR) that takes advantage of modern architectural features such as multicore parallelism, non-uniform memory (NUMA) hierarchies, clusters, and accelerators like GPUs and FPGAs. We integrated Tiramisu within Halide and implemented a representative set of benchmarks to evaluate this integration. Tiramisu is now open source and is available for public use (http://tiramisu-compiler.org/). A paper about Tiramisu was published, it shows that Tiramisu extends Halide with many new capabilities and that Tiramisu can generate efficient code for multicores, GPUs, FPGAs and distributed heterogeneous systems. The performance of code generated by the Tiramisu backends matches or exceeds hand optimized reference implementations. For example, the multicore backend matches the highly optimized Intel MKL library on many kernels and shows speedups reaching 4x over the original Halide. In addition to making Tiramisu more robust, we have used Tiramisu to implement a set of representative tensor operation for constructing baryon building blocks required for multi baryon contractions in LQCD. In order to implement this code, we needed to generalize Tiramisu in two ways: first we needed to support indirect array accesses, and second, we needed to add support for complex numbers to Tiramisu. The code generated by Tiramisu is 6x faster than the reference code. Our efforts towards an MPI based multi-node version of tiramisu have matured and the resulting code scales well on multiple nodes (tests up to 512 KNL nodes have been undertaken).

73 NUCLEAR PHYSICS AND RADIATION PHYSICS↗

Address tracing of parallel systems via TRAPEDS

Trace-driven simulation is an important aid in performance analysis of computer systems. Capturing address traces to use in these simulations, however, is a difficult problem for parallel processor architectures. A technique termed TRAPEDS modifies executable code (at the assembly language level) to dynamically collect the address trace from executing code. TRAPEDS has recently been implemented on both a hypercube multicomputer and a shared-memory multiprocessor. Particular attention is focused on strategies for efficiently and accurately collecting traces from both classes of parallel machines. The iPSC/2 hypercube multicomputer implementation traces both user and system code, and performs simulation on-the-fly to avoid large storage costs. Strategies are detailed for mitigating address trace distortion when collecting operating system traces. The Encore Multimax multiprocessor implementation uses a timer-based approach to reflect the interleaving of the processor traces and stores the traces to disc. Time and space overhead results are presented for both TRAPEDS implementations. Experimental cache simulation results derived from iPSC/2 address traces are presented to illustrate the importance of tracing operating system references.

Stunkel, Craig B.↗

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↗