A portable object-orientedparallelenvironment for CAD algorithms (ProperCAD) is described. The objectives of this research are twofold: to develop parallel algorithms that are portable and to design the parallel alg...
详细信息
A portable object-orientedparallelenvironment for CAD algorithms (ProperCAD) is described. The objectives of this research are twofold: to develop parallel algorithms that are portable and to design the parallel algorithms around a good sequential algorithm with a well-defined parallel-sequential interface, permitting the parallel algorithm to benefit from future developments in sequential algorithms. The first is achieved by writing the algorithms using the ProperCAD environment, a library of functions that permits portability of parallel CAD algorithms across MIMD machines. Programs written using this environment run unchanged on all parallel machines for which this environment is available.< >
Throughout much of the parallel processing community there is the sense that writing software for distributed memory parallel processors is subject to a 'no pain-no gain' rule: that in order to reap the benefi...
详细信息
Throughout much of the parallel processing community there is the sense that writing software for distributed memory parallel processors is subject to a 'no pain-no gain' rule: that in order to reap the benefits of parallel computation one must first suffer the pain of converting the application to run on a parallel machine. The authors believe this is the result of inadequate programming tools and not a problem inherent to parallel processing. They show that one can parallelize real scientific applications and obtain good performance with little effort if the right tools are used. Their vehicle for this demonstration is a six-thousand line DNA and protein sequence comparison application that they have implemented in Mentat, an object-orientedparallel processing system for both parallel and distributed architectures. They briefly describe the application and present performance information for both the Mentat version and a hand-coded parallel version of the application.< >
The paper presents the rationale and design of the concurrency control features of Raven, an object-oriented distributed and parallel programming language and system. Raven's parallel constructs support coarse gra...
详细信息
The paper presents the rationale and design of the concurrency control features of Raven, an object-oriented distributed and parallel programming language and system. Raven's parallel constructs support coarse grained parallelism and are designed to permit programmers to use parallelism with relative ease. To achieve this Raven provides automatic concurrency control on an object's instance data at method invocation time. Raven allows multiple execution threads to access an object strictly for reading or a single execution thread to access an object for the updating of instance data. Raven is operational on a variety of machine architectures, including a shared memory multiprocessor. Experience indicates Raven's concurrency support simplifies the task of converting sequential code to run in a parallel or distributed environment.< >
The authors discuss the design of a software reconfiguration strategy for hypercube multicomputer architectures under multiple faults. The advantage of the strategy over previous schemes is that it requires no redunda...
详细信息
The authors discuss the design of a software reconfiguration strategy for hypercube multicomputer architectures under multiple faults. The advantage of the strategy over previous schemes is that it requires no redundant hardware, but supports reconfiguration through graceful degradation. It is based on the notion of using multiple virtual processors on a single physical processor and using these virtual processors for work-load redistribution under faults. The authors describe an environment, developed on a commercially available Intel iPSC/2 hypercube multicomputer, for implementing the software-based fault tolerance scheme. Results of experiments performed with this environment on the performance degradation of application programs under hardware faults are described. The reconfiguration scheme shows low overhead at low cost, and even provides improved efficiency on a fault-free hypercube.< >
A distributed CAD environment (CENet), a library package (La++), and a CAD system (CtrlNet) based on these features are described. CENet supplies a flexible network environment. La++, written in the C++language, provi...
详细信息
A distributed CAD environment (CENet), a library package (La++), and a CAD system (CtrlNet) based on these features are described. CENet supplies a flexible network environment. La++, written in the C++language, provides object-oriented programming facilities and overloading of functions and operators, enabling various data structures useful in control engineering to be defined. Three typical analysis and design examples on CtrlNet are illustrated.< >
The techniques and the tools developed to produce prototypes from CO-OPN (concurrent object-oriented Petri net) specifications are described. CO-OPN is a specification language for the description of concurrent aspect...
详细信息
The techniques and the tools developed to produce prototypes from CO-OPN (concurrent object-oriented Petri net) specifications are described. CO-OPN is a specification language for the description of concurrent aspects and data-structure aspects of computer programs in an abstract way. The concurrent part of the formalism is described with Petri nets, while the data aspects are described with algebraic abstract data types. In CO-OPN, this association is structured by the object notion. For prototyping such a formalism, a fully operational semantics is required. The semantics is given for the simulation tools that have been developed. An editor and an environment for executing CO-OPN specifications have been developed. The specifications are prototyped using a translation of the specifications into Prolog.< >
A common technique for constructing reliable distributed applications is to use atomic actions for controlling operations on persistent objects. Atomic actions are used to ensure that inconsistencies in application st...
详细信息
A common technique for constructing reliable distributed applications is to use atomic actions for controlling operations on persistent objects. Atomic actions are used to ensure that inconsistencies in application state do not arise when failures occur or when concurrent activities operate on shared objects. Within such an application, objects provide a convenient unit for distribution and concurrency-control. The properties of atomic actions and objects can be exploited together to configure distributed applications, without affecting the correct functioning of the application. This leads to the possibility of changing the configuration of concurrency and distribution of the distributed application to improve availability and performance. These changes in concurrency and distribution can be achieved by varying the object decomposition within the application. The authors show how some kinds of reconfiguration can be achieved without any modification to client applications. The observations are a result of constructing reliable distributed applications using the Arjuna system, which provides tools and libraries for programming with atomic actions and persistent objects in C++.< >
作者:
Ammar, RedaZhang, PingU155
Computer Science & Engineering Department University of Connecticut StorrsCT06268 United States
This paper presents the general structure of a design and modeling environment for real-time, parallel/distributed software systems. It is provided for the designer to cope with different modeling and analysis methods...
详细信息
XENOOPS is an eXecution environment for object-orientedparallel Software. It is designed for parallelcomputing systems with distributed memory. It offers basic mechanisms for a variety of object models. Furthermore,...
详细信息
XENOOPS is an eXecution environment for object-orientedparallel Software. It is designed for parallelcomputing systems with distributed memory. It offers basic mechanisms for a variety of object models. Furthermore, it supports grouping of objects, and object splitting and joining. XENOOPS offers dynamic load balancing, using a transparent migration facility. The architecture of XENOOPS gives application writers the possibility to customize the environment to their applications' needs. A prototype implementation has been built on a transputer system.< >
暂无评论