Search NASA⌕ Search

SEARCH · Search NASA

Results for “concurrency programming”

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 127 records · Page 7

Opportunity for early science return by the Artemis Program

The purpose of the Artemis Program is to gather vital scientific and engineering data by conducting robotic exploration missions on the lunar surface both prior to and concurrent with human missions. The Artemis Program includes rapid, near-term development of a variety of small experimental and operational payloads, a low-cost capacity to deliver these payloads to any location on the lunar surface, and the analysis of the data returned. The Artemis Program will provide opportunities to improve the understanding of lunar geosciences, to demonstrate the Moon's unique capacity as an astronomical platform to study the universe, to conduct scientific and technology development experiments, and to prepare for and complement human missions.

Meyer, Charles↗

Development of a Deployable Nonmetallic Boom for Reconfigurable Systems of Small Spacecraft

In 2005, NASA commenced Phase 1 of the Modular Reconfigurable High Energy Technology Demonstrator (MRHE) program to investigate reconfigurable systems of small spacecraft. During that year, Lockheed Martin's Advanced Technology Center (ATC) led an accelerated effort to develop a 1-g MRHE concept demonstration featuring robotic spacecraft simulators equipped with docking mechanisms and deployable booms. The deployable boom built for MRHE was the result of a joint effort in which ATK was primarily responsible for developing and fabricating the Collapsible Rollable Tube (CRT patent pending) boom while Lockheed Martin designed and built the motorized Boom Deployment Mechanism (BDM) under a concurrent but separate IR&D program. Tight coordination was necessary to meet testbed integration and functionality requirements. This paper provides an overview of the CRT boom and BDM designs and presents preliminary results of integration and testing to support the MRHE demonstration.

Rehnmark, Fredrik↗

Utilization of CAD/CAE for concurrent design of structural aircraft components

The feasibility of installing the Stratospheric Observatory for Infrared Astronomy telescope (named SOFIA) into an aircraft for NASA astronomy studies is investigated using CAD/CAE equipment to either design or supply data for every facet of design engineering. The aircraft selected for the platform was a Boeing 747, chosen on the basis of its ability to meet the flight profiles required for the given mission and payload. CAD models of the fuselage of two of the aircraft models studied (747-200 and 747 SP) were developed, and models for the component parts of the telescope and subsystems were developed by the various concurrent engineering groups of the SOFIA program, to determine the requirements for the cavity opening and for design configuration. It is noted that, by developing a plan to use CAD/CAE for concurrent engineering at the beginning of the study, it was possible to produce results in about two-thirds of the time required using traditional methods.

Kahn, William C.↗

Enabling Capabilities and Resources: 2024 Principal Investigator Meeting Proceedings

As a major supporter of basic genome-enabled research, BER’s Biological Systems Science Division (BSSD) fosters scientific discovery by funding - fundamental biological research across disciplines in conjunction with enabling investigational tools and computational capabilities that include world-class user facilities. The overarching goal of BSSD is to provide the necessary fundamental science to understand, predict, manipulate, and design biological systems that underpin innovations for bioenergy and bioproduct production and enhance understanding of natural, DOE-relevant environmental processes (Biological Systems Science Division Strategic Plan, 2021). To accelerate the U.S. bioeconomy, BSSD pursues innovative science underpinning advances in sustainable biofuels and bioproducts and the development of next-generation technologies and computational resources for systems biology research. The 2024 BSSD Enabling Capabilities and Resources (ECR) Principal Investigator (PI) meeting brought together PIs across the BSSD ECR portfolio to confer on shared interests and opportunities. The meeting was held concurrently with the Genomic Science program (GSP) PI meeting to optimize collaboration on research to advance bioenergy and the bioeconomy. Rick Stevens of Argonne National Laboratory gave a keynote on How Generative Artificial Intelligence Can Impact Biological Research (see Keynote: How Generative Artificial Intelligence Can Impact Biological Research, this page). Plenary presentations included several joint sessions that illuminated the integration and understanding of the larger BSSD mission. GSP’s objective is to provide systems-level understanding of plants, microbes, and their communities through its Bioenergy Research, Biosystems Design, and Environmental Microbiome Research portfolios. The objective of the ECR portfolio is to support development of computational and instrumental platforms to advance fundamental GSP research—and BER more broadly— toward the overall goal of understanding the functional principles of living systems and their response to environmental challenges.

59 BASIC BIOLOGICAL SCIENCES↗

Summary of progress at the Poker Flat Observatory in Alaska

A description of the status of the Poker Flat MST Radar as of early 1983 is included in the 1983 mesosphere-stratosphere-troposphere MST Workshop Proceedings. The Observatory continues to operate in a continuous data-taking mode, except for a three-week planned campaign experiment concurrent with the STATE rocket program during June 1983. Construction of the digital preprocessing system mentioned in the last status report is all but complete. This additional improvement should be operational by late summer. The possibility of steering the array also mentioned in the last status report is being investigated. A project is underway to electronically steer the one-quarter vertical section of the array. Steering will be in finite steps within about + or - 5 deg of vertical. Successful testing of this modification may lead to eventually steering the entire array in this manner. Data analysis of the data base (now more than four years in length) continues with well over one dozen extramural scientific groups participating.

Balsley, B. B.↗

Transputer parallel processing at NASA Lewis Research Center

The transputer parallel processing lab at NASA Lewis Research Center (LeRC) consists of 69 processors (transputers) that can be connected into various networks for use in general purpose concurrent processing applications. The main goal of the lab is to develop concurrent scientific and engineering application programs that will take advantage of the computational speed increases available on a parallel processor over the traditional sequential processor. Current research involves the development of basic programming tools. These tools will help standardize program interfaces to specific hardware by providing a set of common libraries for applications programmers. The thrust of the current effort is in developing a set of tools for graphics rendering/animation. The applications programmer currently has two options for on-screen plotting. One option can be used for static graphics displays and the other can be used for animated motion. The option for static display involves the use of 2-D graphics primitives that can be called from within an application program. These routines perform the standard 2-D geometric graphics operations in real-coordinate space as well as allowing multiple windows on a single screen.

Ellis, Graham K.↗

Space Station Freedom thermal control and life support system design

The Space Station Freedom thermal control system (TCS) and environmental control and life support system (ECLSS) are reviewed. Differences in the TCS and ECLSS are discussed between the early man-tended configuration (MTC) compared to the eventual evolutions to the permanently manned configuration (PMC). Concurrent analytical and developmental testing programs are included in the systems discussions as well as a description of an early 1993 flight test program on elements of the PMC water recovery system. Recent TCS design changes to the air cooling of rack mounted equipment are discussed. An overview of all TCS and ECLSS subsystems is included.

Wegrich, R. D.↗

Evolution of a high-performance storage system based on magnetic tape instrumentation recorders

In order to provide transparent access to data in network computing environments, high performance storage systems are getting smarter as well as faster. Magnetic tape instrumentation recorders contain an increasing amount of intelligence in the form of software and firmware that manages the processes of capturing input signals and data, putting them on media and then reproducing or playing them back. Such intelligence makes them better recorders, ideally suited for applications requiring the high-speed capture and playback of large streams of signals or data. In order to make recorders better storage systems, intelligence is also being added to provide appropriate computer and network interfaces along with services that enable them to interoperate with host computers or network client and server entities. Thus, recorders are evolving into high-performance storage systems that become an integral part of a shared information system. Data tape has embarked on a program with the Caltech sponsored Concurrent Supercomputer Consortium to develop a smart mass storage system. Working within the framework of the emerging IEEE Mass Storage System Reference Model, a high-performance storage system that works with the STX File Server to provide storage services for the Intel Touchstone Delta Supercomputer is being built. Our objective is to provide the required high storage capacity and transfer rate to support grand challenge applications, such as global climate modeling.

Peters, Bruce↗

High-Level Data Races

Data races are a common problem in concurrent and multi-threaded programming. They are hard to detect without proper tool support. Despite the successful application of these tools, experience shows that the notion of data race is not powerful enough to capture certain types of inconsistencies occurring in practice. In this paper we investigate data races on a higher abstraction layer. This enables us to detect inconsistent uses of shared variables, even if no classical race condition occurs. For example, a data structure representing a coordinate pair may have to be treated atomically. By lifting the meaning of a data race to a higher level, such problems can now be covered. The paper defines the concepts view and view consistency to give a notation for this novel kind of property. It describes what kinds of errors can be detected with this new definition, and where its limitations are. It also gives a formal guideline for using data structures in a multi-threading environment.

Artho, Cyrille↗

Actor-based Runtime Verification with MESA

This work presents a runtime verification approach implemented in the tool MESA (MEssage-based System Analysis) which allows for using concurrent monitors to check for properties specified in data parameterized temporal logic and state machines. The tool is implemented as an internal Scala DSL. We employ the actor programming model to implement MESA where monitors are captured by concurrent actors that communicate via messaging. The paper presents a case study in which MESA is used to effectively monitor a large number of flights from live US airspace data streams. We also perform an empirical study by conducting experiments using monitoring systems with different numbers of concurrent monitors and different layers of indexing on the data contained in events. The paper describes the experiments, evaluates the results, and discusses challenges faced during the study. The evaluation shows the value of combining concurrency with indexing to handle data rich events.

runtime verification↗

Correct Compilation of Concurrent C Code

The CompCert compiler represents a landmark effort in program verification as both a piece of verified software and as a compiler for verified C programs. A key shortcoming of CompCert however is that it does not support multithreaded programs. Prior work to add threads to CompCert has either required major rewrites of parts of the proof or only works for well synchronized programs. The problem is that CompCert’s backward simulation derives from a forward simulation via the determinism of the semantics of intermediate representation languages. This makes the proofs in CompCert easier but also makes them incompatible with standard models of multithreading which are non-deterministic. Here we propose an alternate formulation of CompCert’s proof structure that parameterizes the existing single threaded semantics with nondeterministic behavior generated at the multithreading level. While this is an old trick where program equivalence is concerned, performing it in the context of CompCert is quite subtle. Our approach allows for expressive concurrent semantics and does not require major proof rewrites but still results in a global backward simulation for multithreaded programs.

97 MATHEMATICS AND COMPUTING↗

Software For Drawing Design Details Concurrently

Software system containing five computer-aided-design programs enables more than one designer to work on same part or assembly at same time. Reduces time necessary to produce design by implementing concept of parallel or concurrent detailing, in which all detail drawings documenting three-dimensional model of part or assembly produced simultaneously, rather than sequentially. Keeps various detail drawings consistent with each other and with overall design by distributing changes in each detail to all other affected details.

Crosby, Dewey C., III↗

Artemis common lunar lander. Phase 2: Study results for external review

The purpose of the Artemis Program is to gather vital reconnaissance data by conducting robotic exploration missions to the lunar surface both prior to and concurrent with human exploration missions. The Artemis Program includes rapid, near-term development of a variety of small experimental and operational payloads, provides a low-cost capability to deliver these payloads to any location on the lunar surface, and supports the analysis of the data returned. The Artemis Program will improve the understanding of lunar geosciences, demonstrate the Moon's unique capability as an astronomical platform to study the universe, and to conduct scientific and technology development experiments, and will prepare for, enhance, and complement human mission The Artemis Common Lunar Lander Phase 2 Study results for external review are included.

Source record↗

Activity-Centric Approach to Distributed Programming

The first phase of an effort to develop a NASA version of the Cybele software system has been completed. To give meaning to even a highly abbreviated summary of the modifications to be embodied in the NASA version, it is necessary to present the following background information on Cybele: Cybele is a proprietary software infrastructure for use by programmers in developing agent-based application programs [complex application programs that contain autonomous, interacting components (agents)]. Cybele provides support for event handling from multiple sources, multithreading, concurrency control, migration, and load balancing. A Cybele agent follows a programming paradigm, called activity-centric programming, that enables an abstraction over system-level thread mechanisms. Activity centric programming relieves application programmers of the complex tasks of thread management, concurrency control, and event management. In order to provide such functionality, activity-centric programming demands support of other layers of software. This concludes the background information. In the first phase of the present development, a new architecture for Cybele was defined. In this architecture, Cybele follows a modular service-based approach to coupling of the programming and service layers of software architecture. In a service-based approach, the functionalities supported by activity-centric programming are apportioned, according to their characteristics, among several groups called services. A well-defined interface among all such services serves as a path that facilitates the maintenance and enhancement of such services without adverse effect on the whole software framework. The activity-centric application-program interface (API) is part of a kernel. The kernel API calls the services by use of their published interface. This approach makes it possible for any application code written exclusively under the API to be portable for any configuration of Cybele.

Levy, Renato↗

A language comparison for scientific computing on MIMD architectures

Choleski's method for solving banded symmetric, positive definite systems is implemented on a multiprocessor computer using three FORTRAN based parallel programming languages, the Force, PISCES and Concurrent FORTRAN. The capabilities of the language for expressing parallelism and their user friendliness are discussed, including readability of the code, debugging assistance offered, and expressiveness of the languages. The performance of the different implementations is compared. It is argued that PISCES, using the Force for medium-grained parallelism, is the appropriate choice for programming Choleski's method on the multiprocessor computer, Flex/32.

Jones, Mark T.↗

Algorithms and software for nonlinear structural dynamics

The objective of this research is to develop efficient methods for explicit time integration in nonlinear structural dynamics for computers which utilize both concurrency and vectorization. As a framework for these studies, the program WHAMS, which is described in Explicit Algorithms for the Nonlinear Dynamics of Shells (T. Belytschko, J. I. Lin, and C.-S. Tsay, Computer Methods in Applied Mechanics and Engineering, Vol. 42, 1984, pp 225 to 251), is used. There are two factors which make the development of efficient concurrent explicit time integration programs a challenge in a structural dynamics program: (1) the need for a variety of element types, which complicates the scheduling-allocation problem; and (2) the need for different time steps in different parts of the mesh, which is here called mixed delta t integration, so that a few stiff elements do not reduce the time steps throughout the mesh.

Belytschko, Ted↗

2018 LDRD Annual Report (Argonne National Laboratory)

Argonne National Laboratory’s Laboratory Directed Research and Development (LDRD) program encourages the development of novel technical concepts, enhances the Laboratory’s research and development (R&D) capabilities, and enables pursuit of strategic laboratory goals. Argonne’s LDRD projects are proposal based and peer reviewed, supporting ideas that require advanced exploration so they can be sufficiently developed to pursue support through normal programmatic channels. Among the aims of the projects supported by the LDRD program are the establishment of engineering proofs of principle, assessment of design feasibility for prospective facilities, development of instrumentation or computational methods or systems, and discoveries in fundamental science and exploratory development. All LDRD projects have demonstrable ties to one or more of the science, energy, environment, and national security missions of the U.S. Department of Energy (DOE) and its National Nuclear Security Administration (NNSA), and many are also relevant to the missions of other federal agencies that sponsor work at Argonne. A natural consequence of the more “applied” type projects is their concurrent relevance to industry. The LDRD program is managed in overarching portfolios, each containing multiple projects each fiscal year. The LDRD Prime portfolio is further divided into strategic focus areas aligned with Argonne’s strategic plan. The largest component of Argonne’s program is LDRD Prime, which emphasizes R&D explicitly aligned with Laboratory major initiatives in support of Argonne’s strategic plan. The choice of Focus Areas under the LDRD Prime component reflects the major initiatives; the state of development of relevant technical fields; the potential value of advancing those fields to DOE/NNSA and the nation; and the compatibility of the fields with existing facilities, capabilities, and staff expertise at Argonne. Focus Areas with projects that ended in FY18 are: Advanced Computing, Biological and Environmental Science Capability Development, Energy Manufacturing Science and Engineering, Hard X-ray Sciences, Materials and Chemistry, Securing Energy and Critical Resources, and The Universe as Our Laboratory (ULab).

99 GENERAL AND MISCELLANEOUS↗

Generalized Symbolic Execution for Model Checking and Testing

Modern software systems, which often are concurrent and manipulate complex data structures must be extremely reliable. We present a novel framework based on symbolic execution, for automated checking of such systems. We provide a two-fold generalization of traditional symbolic execution based approaches: one, we define a program instrumentation, which enables standard model checkers to perform symbolic execution; two, we give a novel symbolic execution algorithm that handles dynamically allocated structures (e.g., lists and trees), method preconditions (e.g., acyclicity of lists), data (e.g., integers and strings) and concurrency. The program instrumentation enables a model checker to automatically explore program heap configurations (using a systematic treatment of aliasing) and manipulate logical formulae on program data values (using a decision procedure). We illustrate two applications of our framework: checking correctness of multi-threaded programs that take inputs from unbounded domains with complex structure and generation of non-isomorphic test inputs that satisfy a testing criterion. Our implementation for Java uses the Java PathFinder model checker.

Khurshid, Sarfraz↗