Distributed systems that span large geographic distances or manage large numbers of objects are already common place. In such systems, programming applications with even modest reliability requirements to run correctly and efficiently is a difficult task due to asynchrony and the possibility of complex failure scenarios. We describe the architecture of the RELACS communication subsystem that constitutes the microkernel of a layered approach to reliable computing in large-scale distributed systems. RELACS is designed to be highly portable and implements a very small number of abstractions and primitives that should be sufficient for building a variety of interesting higher-level paradigms.< >
Modern distributed systems consisting of powerful workstations and high-speed interconnection networks are an economical alternative to special-purpose parallel machines. Unfortunately, current software support requires users to be experts in distributed computing in order to develop parallel applications for such systems. In this paper, we describe the Paralex system that allows parallel scientific applications to be programmed and executed on distributed systems as if they were uniform, multiprocessor parallel machines. We illustrate the main features of the system by considering the Synthetic Aperture Radar signal processing problem. Some preliminary performance results for the system running on a network of Sun-4 workstations are also reported.
Modern distributed systems consisting of powerful workstations and high-speed interconnection networks are an economical alternative to special-purpose supercomputers. The technical issues that need to be addressed in exploiting the parallelism inherent in a distributed system include heterogeneity, high-latency communication, fault tolerance and dynamic load balancing. Current software systems for parallel programming provide little or no automatic support towards these issues and require users to be experts in fault-tolerant distributed computing. The Paralex system is aimed at exploring the extent to which the parallel application programmer can be liberated from the complexities of distributed systems. Paralex is a complete programming environment and makes extensive use of graphics to define, edit, execute, and debug parallel scientific applications. All of the necessary code for distributing the computation across a network and replicating it to achieve fault tolerance and dynamic load balancing is automatically generated by the system. In this paper we give an overview of Paralex and present our experiences with a prototype implementation.
Current research on Real Time systems aims to reach new goals in two different directions: from a theoretical point of view the focus is mainly on shared memory systems while, on the other hand, a number of different implementative works make use of distributed system hardware platforms. Our goal is to investigate models which can integrate both views using distributed programs on loosely coupled networks as Real Time elements. This work introduces formal models of schedulability conditions presenting an algorithm able to deterministically decide whether the system can satisfy task requests, providing it with a heuristic mapping function. The algorithm is able to manage Coarse Grain Data Flow programs having Hard-Real-Time constraints: those which have catastrophic effects in case of deadline miss. A pseudo code of the algorithm and some experimental results are also presented in order to validate its applicability and functionality.
Paralex is a programming environment for developing and executing parallel applications in distributed systems. The user is spared complexities of distributed programming including remote execution, data representation, communication, synchronization and fault tolerance as they are handled automatically by the system. Once an application starts execution in a distributed system, it may be interacted with at two levels: by Paralex itself to achieve automatic fault tolerance and dynamic load balancing; or by the user in association with performance tuning and debugging. In this paper, we describe the set of monitors and control mechanisms that constitute the Paralex run-time system and their use for implementing dynamic load balancing and debugging.
Modern distributed systems consisting of powerful workstations and high-speed interconnection networks are an economical alternative to special-purpose super computers. The technical issues that need to be addressed in exploiting the parallelism inherent in a distributed system include heterogeneity, high-latency communication, fault tolerance and dynamic load balancing. Current software systems for parallel programming provide little or no automatic support towards these issues and require users to be experts in fault-tolerant distributed computing. The Paralex system is aimed at exploring the extent to which the parallel application programmer can be liberated from the complexities of distributed systems. Paralex is a complete programming environment and makes extensive use of graphics to define, edit, execute and debug parallel scientific applications. All of the necessary code for distributing the computation across a network and replicating it to achieve fault tolerance and dynamic load balancing is automatically generated by the system. In this paper we give an overview of Paralex and present our experiences with a prototype implementation.