Compiling general programming languages to run efficiently on a distributed architecture is hard. One of the problems that confronts the potential implementor, is how to store the stack. this is normally used in two w...
详细信息
A distributed algorithm based on echo algorithms is presented which constructs the minimum-weight spanning tree in a general undirected graph. In the worst case, the algorithm needs at most (2m + 2(n-1) log (n/2)) mes...
详细信息
A distributed algorithm based on echo algorithms is presented which constructs the minimum-weight spanning tree in a general undirected graph. In the worst case, the algorithm needs at most (2m + 2(n-1) log (n/2)) messages and (2d log n) time, where d is the diameter of the network. In the best case, it needs only 2m messages and 2d time. the algorithm works in phases, and each phase consists of a down wave and an up wave. When the number of fragments is cut by at least one half in each phase, it needs at most O(log n) phases. On average, the algorithm needs only O(m) messages and O(d) time. the algorithm itself is simple, so that other distributed algorithms based on it can be derived more easily.
A discussion is presented of research on the development of a toolkit that supports general static analysis using a Petri net framework for Ada tasking. the toolkit integrates some custom and general-purpose tools. th...
详细信息
A discussion is presented of research on the development of a toolkit that supports general static analysis using a Petri net framework for Ada tasking. the toolkit integrates some custom and general-purpose tools. the custom tools were defined and implemented specifically for research in Ada tasking analysis;the general-purpose tools are Petri net tools developed to support arbitrary Petri-net-based research. the analysis toolkit is divided into two major subsystems. the first is the front-end translator subsystem, which translates Ada source (or design-level source specified in a design language called Ada Tasking Language) into a Petri net format. the translation allows one to base current and future analysis techniques on a model that is boththeoretically mature and actively investigated. the second is the back-end information display subsystem, which receives user queries and presents tasking analysis results. Example Ada tasking programs are used to demonstrate the utility of the tools individually as well as collectively.
the Camelot library extends the programming language to provide a high-level programming interface to Camelot, a general-purpose distributed transaction system. the Camelot library is implemented as a collection of C ...
详细信息
the Camelot library extends the programming language to provide a high-level programming interface to Camelot, a general-purpose distributed transaction system. the Camelot library is implemented as a collection of C functions and macros. the interface presented by the library also provides a concise high-level model of the services offered by a general-purpose transaction system. A broad overview of the interface is given, and implementation experience is briefly summarized.< >
A language paradigm called shared dataspace is defined that causes computations to be performed using an anonymous, content-addressable communication medium acted upon by atomic transactions. To probe the essence of t...
详细信息
A language paradigm called shared dataspace is defined that causes computations to be performed using an anonymous, content-addressable communication medium acted upon by atomic transactions. To probe the essence of this paradigm, a relatively simple shared dataspace language called Swarm is defined. An overview is presented of the Swarm language. A formal operational model for the language is given and some of the programming implications and distinctive features of the model and language are discussed. Swarm programming strategies are examined using a series of related example programs.< >
Marionette, a software package for distributed parallel programming in an environment of networked heterogeneous computer systems is described. It uses a master/slave model in which otherwise sequential application pr...
详细信息
Marionette, a software package for distributed parallel programming in an environment of networked heterogeneous computer systems is described. It uses a master/slave model in which otherwise sequential application programmes can invoke worker operations (asynchronous remote procedure calls executed by slave processes) and context operations (updates to slaves' process states). the master and slaves also interact through shared data structures that can be modified only by the master. the Marionette runtime system is a heterogeneous remote procedure call package. It maintains the consistency of shared data structures, recovers transparently from slave processor failure, and assigns operations to slaves. the Marionette system includes tools for debugging, automated compilation of program binaries for multiple architectures, and distributing binaries to remote file systems. Measurements of a UNIX-based implementation to Marionette and a parallel ray-tracing renderer are presented.< >
the binary predicate execution model (BPEM) is a computational model that combines logic programming, semantic nets, and message-driven computation into a paradigm for the construction of highly parallel knowledge-bas...
详细信息
the binary predicate execution model (BPEM) is a computational model that combines logic programming, semantic nets, and message-driven computation into a paradigm for the construction of highly parallel knowledge-base systems. Simulation results are presented that demonstrate the ability of BPM to exploit effectively the resources of a loosely coupled computer network consisting of large numbers of independent processing elements. these simulations suggest performance on the order of 10/sup 5/ logical inferences per second for 256 processing elements in an n-cube configuration. A very important feature of the BPEM is that it scales-up linearly under simple OR-parallelism and AND-parallelism. Hence, the BPEM can scale-up to exploit parallelism efficiently in very large semantic networks and knowledge bases.< >
A network is proposed that preserves all of the properties of the hypercube, but has a diameter which is only about half of that of the hypercube. this network is self-routing, in the sense that there is a simple dist...
详细信息
A network is proposed that preserves all of the properties of the hypercube, but has a diameter which is only about half of that of the hypercube. this network is self-routing, in the sense that there is a simple distributed routing algorithm which guarantees optimal paths between any pair of vertices. this fact, together with other properties such as regularity, symmetry, high connectivity, and a simple recursive structure, implies that the multiply twisted cube is an alternative to the ordinary hypercube for massively parallel architectures. Single-input multiple-data stream algorithm were developed which utilize the new architecture. the multiply-twisted hypercube architecture can be used to profitably emulate the ordinary hypercube. Some of the basic properties of this network are discussed, the programming issues are emphasized, and it is shown that any hypercube algorithm can be mapped to run on the new architecture. In many cases this mapping results in a substantial reduction in the running time due to more efficient routing of data between processors.< >
A brief overview is presented of work on building a highly distributed office application based on mobile objects. the authors explain the techniques used to find the target of an invocation and describe how the techn...
详细信息
A brief overview is presented of work on building a highly distributed office application based on mobile objects. the authors explain the techniques used to find the target of an invocation and describe how the technique is implemented. Location-independent invocation (LII) is presented as a conceptual service that is independent of any particular application, operating system, or programming language. LII completely removes remote call processing buildings from the view of application programmer. It is shown how LII can be implemented without language or system support in any environment that provides reliable interprocess communication. the indications for LII are studied, i.e. under what circumstances the proposed abstractions are beneficial. A description is given of an application domain in which LII is useful and the core services that support it. An object-finding algorithm is described. the relationship of LII to earlier work on object-finding and location independence is included.< >
Concert, a high-level-language approach to programming heterogeneous distributed systems, is described. the Concert model introduces a small set of language extensions into conventional procedural languages. these lan...
详细信息
Concert, a high-level-language approach to programming heterogeneous distributed systems, is described. the Concert model introduces a small set of language extensions into conventional procedural languages. these language extensions support a cooperative peer process model which addresses in the distributed environment the same issues addressed by language semantics in the conventional environment. the Concert implementation provides layered support for these language extensions, bridging a different source of heterogeneity at each layer. A prototype Concert system currently includes C programs running on OS/2 on multiple PS/2s communicating via calls with one another as well as with PL/I programs running on VM/370.< >
暂无评论