Search NASASearch

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 37 records · Page 2

The Wallops Flight Facility Rapid Response Range Operations Initiative

While the dominant focus on short response missions has appropriately centered on the launch vehicle and spacecraft, often overlooked or afterthought phases of these missions have been launch site operations and the activities of launch range organizations. Throughout the history of organized spaceflight, launch ranges have been the bane of flight programs as the source of expense, schedule delays, and seemingly endless requirements. Launch Ranges provide three basic functions: (1) provide an appropriate geographical location to meet orbital other mission trajectory requirements, (2) provide project services such as processing facilities, launch complexes, tracking and data services, and expendable products, and (3) assure safety and property protection to participating personnel and third-parties. The challenge with which launch site authorities continuously struggle, is the inherent conflict arising from projects whose singular concern is execution of their mission, and the range s need to support numerous simultaneous customers. So, while tasks carried out by a launch range committed to a single mission pale in comparison to efforts of a launch vehicle or spacecraft provider and could normally be carried out in a matter of weeks, major launch sites have dozens of active projects separate sponsoring organizations. Accommodating the numerous tasks associated with each mission, when hardware failures, weather, maintenance requirements, and other factors constantly conspire against the range resource schedulers, make the launch range as significant an impediment to responsive missions as launch vehicles and their cargo. The obvious solution to the launch site challenge was implemented years ago when the Department of Defense simply established dedicated infrastructure and personnel to dedicated missions, namely an Inter Continental Ballistic Missile. This however proves to be prohibitively expensive for all but the most urgent of applications. So the challenge becomes how can a launch site provide acceptably responsive mission services to a particular customer without dedicating extensive resources and while continuing to serve other projects? NASA's Wallops Flight Facility (WFF) is pursuing solutions to exactly this challenge. NASA, in partnership with the Virginia Commercial Space Flight Authority, has initiated the Rapid Response Range Operations Initiative (R3Ops). R3Ops is a multi-phased effort to incrementally establish and demonstrate increasingly responsive launch operations, with an ultimate goal of providing ELV-class services in a maximum of 7-10 days from initial notification routinely, and shorter schedules possible with committed resources. This target will be pursued within the reality of simultaneous concurrent programs, and ideally, largely independent of specialized flight system configurations. WFF has recently completed Phase 1 of R3Ops, an in-depth collection (through extensive expert interviews) and software modeling of individual steps by various range disciplines. This modeling is now being used to identify existing inefficiencies in current procedures, to identify bottlenecks, and show interdependencies. Existing practices are being tracked to provide a baseline to benchmark against as new procedures are implemented. This paper will describe in detail the philosophies behind WFF's R3Ops, the data collected and modeled in Phase 1, and strategies for meeting responsive launch requirements in a multi-user range environment planned for subsequent phases of this initiative.

Underwood, Bruce E.

Watching the Watchers with Verified Formal-Assurance Tools (Abbreviated Final Report)

The “Watching the Watchers” project studied the problem of establishing assurance cases for tools that are used to assure other things. Specifically, we were interested in understanding the tools and techniques one could apply to software to build an assurance case to evaluate their applicability, difficulty, level of assurance provided, and scalability. To do so we chose a set of use cases of relevance to LLNL and our various DOE and non-DOE partners and developed demonstrators to perform this evaluation. Our key focal point was around additive manufacturing problems and assurance gaps that we identified in the additive manufacturing workflow from start to completion. We also explored other areas related to AI, data analysis, and concurrent programming. Follow-on research is planned to take our prototypes from this project and adapt and mature them to fit LLNL mission applications.

97 MATHEMATICS AND COMPUTING

Exploratory studies of the cruise performance of upper surface blown configurations

The data and major conclusions obtained from an experimental/analytical study of upper-surface blown (USB) configurations at cruise are summarized. The high-speed (subsonic) experimental work, studying the aerodynamic effects of wing-nacelle geometric variations, was conducted around semi-span model configurations composed of diversified, interchangeable components. Power simulation was provided by high pressure air ducted through closed forebody nacelles. Nozzle geometry was varied across size, exit aspect ratio, exit position and boattail angle. Both 3-D force and 2-D pressure measurements were obtained at cruise Mach numbers from 0.5 to 0.8 and at nozzle pressure ratios up to about 3.0. The experimental investigation was supported by an analytical synthesis of the system using a vortex lattice representation with first-order power effects. Results are also presented from a compatibility study in which a short-haul transport is designed on the basis of the aerodynamic findings in the experimental study as well as acoustical data obtained in a concurrent program. High-lift test data are used to substantiate the projected performance of the selected transport design.

Braden, J. A.

An interval logic for higher-level temporal reasoning

Prior work explored temporal logics, based on classical modal logics, as a framework for specifying and reasoning about concurrent programs, distributed systems, and communications protocols, and reported on efforts using temporal reasoning primitives to express very high level abstract requirements that a program or system is to satisfy. Based on experience with those primitives, this report describes an Interval Logic that is more suitable for expressing such higher level temporal properties. The report provides a formal semantics for the Interval Logic, and several examples of its use. A description of decision procedures for the logic is also included.

Schwartz, R. L.

DC-10 winglet flight evaluation

Results of a flight evaluation of winglets on a DC-10 Series 10 aircraft are presented. For sensitive areas of comparison, effects of winglets were determined back-to-back with and without winglets. Basic and reduced-span winglet configurations were tested. After initial encounter with low-speed buffet, a number of acceptable configurations were developed. For maximum drag reduction at both cruise and low speeds, lower winglets were required, having leading edge devices on upper and lower winglets for the latter regime. The cruise benefits were enhanced by adding outboard aileron droop to the reduced-span winglet aircraft. Winglets had no significant impact on stall speeds, high-speed buffet boundary, and stability and control. Flutter test results agreed with predictions and ground vibration data. Flight loads measurement, provided in a concurrent program, also agreed with predictions. It was estimated that a production version of the aircraft, using the reduced-span winglet and aileron droop, would yield a 3-percent reduction in fuel burned with capacity payload. This range was 2% greater than with winglets. A 5% reduction in takeoff distance at maximum takeoff weight would also result.

Taylor, A. B.

Putting time into proof outlines

A logic for reasoning about timing of concurrent programs is presented. The logic is based on proof outlines and can handle maximal parallelism as well as resource-constrained execution environments. The correctness proof for a mutual exclusion protocol that uses execution timings in a subtle way illustrates the logic in action.

Schneider, Fred B.

Putting time into proof outlines

A logic for reasoning about timing properties of concurrent programs is presented. The logic is based on Hoare-style proof outlines and can handle maximal parallelism as well as certain resource-constrained execution environments. The correctness proof for a mutual exclusion protocol that uses execution timings in a subtle way illustrates the logic in action. A soundness proof using structural operational semantics is outlined in the appendix.

Schneider, Fred B.

Automatic Management of Parallel and Distributed System Resources

Viewgraphs on automatic management of parallel and distributed system resources are presented. Topics covered include: parallel applications; intelligent management of multiprocessing systems; performance evaluation of parallel architecture; dynamic concurrent programs; compiler-directed system approach; lattice gaseous cellular automata; and sparse matrix Cholesky factorization.

Yan, Jerry

Heterogeneous concurrent computing with exportable services

Heterogeneous concurrent computing, based on the traditional process-oriented model, is approaching its functionality and performance limits. An alternative paradigm, based on the concept of services, supporting data driven computation, and built on a lightweight process infrastructure, is proposed to enhance the functional capabilities and the operational efficiency of heterogeneous network-based concurrent computing. TPVM is an experimental prototype system supporting exportable services, thread-based computation, and remote memory operations that is built as an extension of and an enhancement to the PVM concurrent computing system. TPVM offers a significantly different computing paradigm for network-based computing, while maintaining a close resemblance to the conventional PVM model in the interest of compatibility and ease of transition Preliminary experiences have demonstrated that the TPVM framework presents a natural yet powerful concurrent programming interface, while being capable of delivering performance improvements of upto thirty percent.

Sunderam, Vaidy

Software Development Technologies for Reactive, Real-Time, and Hybrid Systems: Summary of Research

This research is directed towards the implementation of a comprehensive deductive-algorithmic environment (toolkit) for the development and verification of high assurance reactive systems, especially concurrent, real-time, and hybrid systems. For this, we have designed and implemented the STCP (Stanford Temporal Prover) verification system. Reactive systems have an ongoing interaction with their environment, and their computations are infinite sequences of states. A large number of systems can be seen as reactive systems, including hardware, concurrent programs, network protocols, and embedded systems. Temporal logic provides a convenient language for expressing properties of reactive systems. A temporal verification methodology provides procedures for proving that a given system satisfies a given temporal property. The research covered necessary theoretical foundations as well as implementation and application issues.

Manna, Zohar

Abstraction and Assume-Guarantee Reasoning for Automated Software Verification

Compositional verification and abstraction are the key techniques to address the state explosion problem associated with model checking of concurrent software. A promising compositional approach is to prove properties of a system by checking properties of its components in an assume-guarantee style. This article proposes a framework for performing abstraction and assume-guarantee reasoning of concurrent C code in an incremental and fully automated fashion. The framework uses predicate abstraction to extract and refine finite state models of software and it uses an automata learning algorithm to incrementally construct assumptions for the compositional verification of the abstract models. The framework can be instantiated with different assume-guarantee rules. We have implemented our approach in the COMFORT reasoning framework and we show how COMFORT out-performs several previous software model checking approaches when checking safety properties of non-trivial concurrent programs.

Chaki, S.

Concrete Model Checking with Abstract Matching and Refinement

We propose an abstraction-based model checking method which relies on refinement of an under-approximation of the feasible behaviors of the system under analysis. The method preserves errors to safety properties, since all analyzed behaviors are feasible by definition. The method does not require an abstract transition relation to he generated, but instead executes the concrete transitions while storing abstract versions of the concrete states, as specified by a set of abstraction predicates. For each explored transition. the method checks, with the help of a theorem prover, whether there is any loss of precision introduced by abstraction. The results of these checks are used to decide termination or to refine the abstraction, by generating new abstraction predicates. If the (possibly infinite) concrete system under analysis has a finite bisimulation quotient, then the method is guaranteed to eventually explore an equivalent finite bisimilar structure. We illustrate the application of the approach for checking concurrent programs. We also show how a lightweight variant can be used for efficient software testing.

Pasareanu Corina S.

Automated Verification of Specifications with Typestates and Access Permissions

We propose an approach to formally verify Plural specifications based on access permissions and typestates, by model-checking automatically generated abstract state-machines. Our exhaustive approach captures all the possible behaviors of abstract concurrent programs implementing the specification. We describe the formal methodology employed by our technique and provide an example as proof of concept for the state-machine construction rules. The implementation of a fully automated algorithm to generate and verify models, currently underway, provides model checking support for the Plural tool, which currently supports only program verification via data flow analysis (DFA).

Siminiceanu, Radu I.

The FLEX/32 multicomputing environment

The FLEX/32 Multicomputer is a generic environment for cooperating multiple processors. The FLEX/32 supports a number of different processors, making it heterogeneous in terms of the instruction sets it supports, and homogeneous in its ability to provide consistent storage and input/output facilities to its differing processors. These facilities are accessed through standard 32-bit VMEbus connections. The FLEX/32 supports the full UNIX System V Operating System and languages associated with it, plus the extended ConCurrent C and Concurrent FORTRAN 77 languages that allow programming of concurrent software at a high level. Direct programming support at all levels is provided by the environment hardware for concurrent software execution and optimization, including hardware support for shared resource access arbitration, conditional critical region arbitration, and interprocessor messages.

Matelan, N.

Assessing the Impact of Aircraft Emissions on the Stratosphere

For the past decade, the NASA Atmospheric Effects of Aviation Project (AEAP) has been the U.S. focal point for research on aircraft effects. In conjunction with U.S. basic research programs, AEAP and concurrent European research programs have driven remarkable progress reports released in 1999 [IPCC, 1999; Kawa et al., 1999]. The former report primarily focuses on aircraft effects in the upper troposphere, with some discussion on stratospheric impacts. The latter report focuses entirely on the stratosphere. The current status of research regarding aviation effects on stratospheric ozone and climate, as embodied by the findings of these reports, is reviewed. The following topics are addressed: Aircraft Emissions, Pollution Transport, Atmospheric Chemistry, Polar Processes, Climate Impacts of Supersonic Aircraft, Subsonic Aircraft Effect on the Stratosphere, Calculations of the Supersonic Impact on Ozone and Sensitivity to Input Conditions.

Kawa, S. R.

Exploiting loop level parallelism in nonprocedural dataflow programs

Discussed are how loop level parallelism is detected in a nonprocedural dataflow program, and how a procedural program with concurrent loops is scheduled. Also discussed is a program restructuring technique which may be applied to recursive equations so that concurrent loops may be generated for a seemingly iterative computation. A compiler which generates C code for the language described below has been implemented. The scheduling component of the compiler and the restructuring transformation are described.

Gokhale, Maya B.

RACER: Effective Race Detection Using AspectJ

The limits of coding with joint constraints on detected and undetected error rates Programming errors occur frequently in large software systems, and even more so if these systems are concurrent. In the past, researchers have developed specialized programs to aid programmers detecting concurrent programming errors such as deadlocks, livelocks, starvation and data races. In this work we propose a language extension to the aspect-oriented programming language AspectJ, in the form of three new built-in pointcuts, lock(), unlock() and may be Shared(), which allow programmers to monitor program events where locks are granted or handed back, and where values are accessed that may be shared amongst multiple Java threads. We decide thread-locality using a static thread-local objects analysis developed by others. Using the three new primitive pointcuts, researchers can directly implement efficient monitoring algorithms to detect concurrent programming errors online. As an example, we expose a new algorithm which we call RACER, an adoption of the well-known ERASER algorithm to the memory model of Java. We implemented the new pointcuts as an extension to the Aspect Bench Compiler, implemented the RACER algorithm using this language extension and then applied the algorithm to the NASA K9 Rover Executive. Our experiments proved our implementation very effective. In the Rover Executive RACER finds 70 data races. Only one of these races was previously known.We further applied the algorithm to two other multi-threaded programs written by Computer Science researchers, in which we found races as well.

data analysis