19,385 research outputs found
Deterministic Consistency: A Programming Model for Shared Memory Parallelism
The difficulty of developing reliable parallel software is generating
interest in deterministic environments, where a given program and input can
yield only one possible result. Languages or type systems can enforce
determinism in new code, and runtime systems can impose synthetic schedules on
legacy parallel code. To parallelize existing serial code, however, we would
like a programming model that is naturally deterministic without language
restrictions or artificial scheduling. We propose "deterministic consistency",
a parallel programming model as easy to understand as the "parallel assignment"
construct in sequential languages such as Perl and JavaScript, where concurrent
threads always read their inputs before writing shared outputs. DC supports
common data- and task-parallel synchronization abstractions such as fork/join
and barriers, as well as non-hierarchical structures such as producer/consumer
pipelines and futures. A preliminary prototype suggests that software-only
implementations of DC can run applications written for popular parallel
environments such as OpenMP with low (<10%) overhead for some applications.Comment: 7 pages, 3 figure
System for Anomaly and Failure Detection (SAFD) system development
This task specified developing the hardware and software necessary to implement the System for Anomaly and Failure Detection (SAFD) algorithm, developed under Technology Test Bed (TTB) Task 21, on the TTB engine stand. This effort involved building two units; one unit to be installed in the Block II Space Shuttle Main Engine (SSME) Hardware Simulation Lab (HSL) at Marshall Space Flight Center (MSFC), and one unit to be installed at the TTB engine stand. Rocketdyne personnel from the HSL performed the task. The SAFD algorithm was developed as an improvement over the current redline system used in the Space Shuttle Main Engine Controller (SSMEC). Simulation tests and execution against previous hot fire tests demonstrated that the SAFD algorithm can detect engine failure as much as tens of seconds before the redline system recognized the failure. Although the current algorithm only operates during steady state conditions (engine not throttling), work is underway to expand the algorithm to work during transient condition
The CIAO Multi-Dialect Compiler and System: An Experimentation Workbench for Future (C)LP Systems
CIAO is an advanced programming environment supporting Logic and Constraint programming. It offers a simple concurrent kernel on top of which declarative and non-declarative extensions are added via librarles. Librarles are available for supporting the ISOProlog standard, several constraint domains, functional and higher order programming, concurrent and distributed programming, internet programming, and others. The source language allows declaring properties of predicates via assertions, including types and modes. Such properties are checked at compile-time or at run-time. The compiler and system architecture are designed to natively support modular global analysis, with the two objectives of proving properties in assertions and performing program optimizations, including transparently exploiting parallelism in programs. The purpose of this paper is to report on recent progress made in the context of the CIAO system, with special emphasis on the capabilities of the compiler, the techniques used for supporting such capabilities, and the results in the áreas of program analysis and transformation already obtained with the system
Uniqueness Typing for Resource Management in Message-Passing Concurrency
We view channels as the main form of resources in a message-passing
programming paradigm. These channels need to be carefully managed in settings
where resources are scarce. To study this problem, we extend the pi-calculus
with primitives for channel allocation and deallocation and allow channels to
be reused to communicate values of different types. Inevitably, the added
expressiveness increases the possibilities for runtime errors. We define a
substructural type system which combines uniqueness typing and affine typing to
reject these ill-behaved programs
SPECTRASAT: A concept for the collection of global directional wave spectra
The synthetic aperture radar (SAR) imagery from SEASAT revealed a rich tapestry of backscatter patterns from the surface of the ocean. Although still far from being fully understood, these patterns occurred on nearly all spatial scales accessible to the SAR, that is from its spatial resolution of 25 m to its full swath width of 100 km. Futhermore, the backscatter signature appear to reveal a large variety of atmospheric and oceanic processes that occur above, at, and below the ocean surface. Proper interpretation of these signatures of varying scales with respect to their underlying geophysical causes is a major objective of SAR ocean research. Even now, however, it is clear that SAR offers a unique means to monitor wind and waves over global scales. A properly designed, configured, and complimented orbiting SAR system should yield substantial improvements in operational forecasts vital to marine activities. Since wind and wave information is optimally extracted in the spectral domain, the name SPECTRASAT is proposed for this global collection scheme
Acyclic Solos and Differential Interaction Nets
We present a restriction of the solos calculus which is stable under
reduction and expressive enough to contain an encoding of the pi-calculus. As a
consequence, it is shown that equalizing names that are already equal is not
required by the encoding of the pi-calculus. In particular, the induced solo
diagrams bear an acyclicity property that induces a faithful encoding into
differential interaction nets. This gives a (new) proof that differential
interaction nets are expressive enough to contain an encoding of the
pi-calculus. All this is worked out in the case of finitary (replication free)
systems without sum, match nor mismatch
- …