140 research outputs found
Orca: A Language for Parallel Programming of Distributed Systems
Orca is a language for implementing parallel applications on loosely coupled distributed systems. Unlike most languages for distributed programming, it allows processes on different machines to share data. Such data are encapsulated in data-objects, which are instances of user-defined abstract data types. The implementation of Orca takes care of the physical distribution of objects among the local memories of the processors. In particular, an implementation may replicate and/or migrate objects in order to decrease access times to objects and increase parallelism. This paper gives a detailed description of the Orca language design and motivates the design choices. Orca is intended for applications programmers rather than systems programmers. This is reflected in its design goals to provide a simple, easy to use language that is type-secure and provides clean semantics. The paper discusses three example parallel applications in Orca, one of which is described in detail. It also describes..
Intensive hypercube communication Prearranged communication in link-bound machines,
Hypercube algorithms are developed for a variety of communication-intensive tasks such as transposing a matrix, histogramming, sending a (long) message from one node to another, broadcasting a message from one node to all others, broadcasting a message from each node to all others, and exchanging messages between nodes via a fixed permutation. The algorithm for exchanging via a fixed permutation can be viewed as a deterministic analog of Valiant's randomized routing. The algorithms are for link-bound hypercubes in which local processing time is ignored, communication time predominates, message headers are not needed because all nodes know the task being performed, and all nodes can use all communication links simultaneously. Through systematic use of techniques such as pipelining, hatching, variable packet sizing, symmetrizing, and completing, for all these problems algorithms which achieve a time with an optimal highest-order term are obtained.Peer Reviewedhttp://deepblue.lib.umich.edu/bitstream/2027.42/28830/1/0000664.pd
Information sharing among ideal agents
Multi-agent systems operating in complex domains crucially require agents to interact with each other. An important result of this interaction is that some of the private knowledge of the agents is being shared in the group of agents. This thesis investigates the theme of knowledge sharing from a theoretical point of view by means of the formal tools provided by modal logic.
More specifically this thesis addresses the following three points.
First, the case of hypercube systems, a special class of interpreted systems as defined by Halpern and colleagues, is analysed in full detail. It is here proven that the logic S5WDn constitutes a sound and complete axiomatisation for hypercube systems. This logic, an extension of the modal system S5n commonly used to represent knowledge of a multi-agent system, regulates how knowledge is being shared among agents modelled by hypercube systems. The logic S5WDn is proven to be decidable. Hypercube systems are proven to be synchronous agents with perfect recall that communicate only by broadcasting, in separate work jointly with Ron van der Meyden not fully reported in this thesis.
Second, it is argued that a full spectrum of degrees of knowledge sharing can be present in any multi-agent system, with no sharing and full sharing at the extremes. This theme is investigated axiomatically and a range of logics representing a particular class of knowledge sharing between two agents is presented. All the logics but two in this spectrum are proven complete by standard canonicity proofs. We conjecture that these two remaining logics are not canonical and it is an open problem whether or not they are complete.
Third, following a influential position paper by Halpern and Moses, the idea of refining and checking of knowledge structures in multi-agent systems is investigated. It is shown that, Kripke models, the standard semantic tools for this analysis are not adequate and an alternative notion, Kripke trees, is put forward. An algorithm for refining and checking Kripke trees is presented and its major properties investigated. The algorithm succeeds in solving the famous muddy-children puzzle, in which agents communicate and reason about each other's knowledge.
The thesis concludes by discussing the extent to which combining logics, a promising new area in pure logic, can provide a significant boost in research for epistemic and other theories for multi-agent systems
Stochastic Analysis of a Churn-Tolerant Structured Peer-to-Peer Scheme
We present and analyze a simple and general scheme to build a churn
(fault)-tolerant structured Peer-to-Peer (P2P) network. Our scheme shows how to
"convert" a static network into a dynamic distributed hash table(DHT)-based P2P
network such that all the good properties of the static network are guaranteed
with high probability (w.h.p). Applying our scheme to a cube-connected cycles
network, for example, yields a degree connected network, in which
every search succeeds in hops w.h.p., using messages,
where is the expected stable network size. Our scheme has an constant
storage overhead (the number of nodes responsible for servicing a data item)
and an overhead (messages and time) per insertion and essentially
no overhead for deletions. All these bounds are essentially optimal. While DHT
schemes with similar guarantees are already known in the literature, this work
is new in the following aspects:
(1) It presents a rigorous mathematical analysis of the scheme under a
general stochastic model of churn and shows the above guarantees;
(2) The theoretical analysis is complemented by a simulation-based analysis
that validates the asymptotic bounds even in moderately sized networks and also
studies performance under changing stable network size;
(3) The presented scheme seems especially suitable for maintaining dynamic
structures under churn efficiently. In particular, we show that a spanning tree
of low diameter can be efficiently maintained in constant time and logarithmic
number of messages per insertion or deletion w.h.p.
Keywords: P2P Network, DHT Scheme, Churn, Dynamic Spanning Tree, Stochastic
Analysis
The efficiency of greedy routing in hypercubes and butterflies
Includes bibliographical references (p. 24-26).Cover title. "October 1990".Research supported by the ARO. DAAL03-86-K-0171 Research supported by the NSF. ECS-8552419by George D. Stamoulis and John N. Tsitsiklis
Broadcasting in Hyper-cylinder graphs
Broadcasting in computer networking means the dissemination of information, which is known initially only at some nodes, to all network members. The goal is to inform every node in the minimal time possible. There are few models for broadcasting; the simplest and the historical model is called the Classical model. In the Classical model, dissemination happens in synchronous rounds, wherein a node may only inform one of its neighbors. The broadcast question is: What is the minimum number of rounds needed for broadcasting, and what broadcast scheme achieves it?
For general graphs, these questions are NP-hard, and it is known to be at least 3 - Īµ inapproximable for any real Īµ > 0. Even for some very restricted classes of graphs, the questions remain as an NP-hard problem. Little is known about broadcasting in restricted graphs, and only a few classes have a polynomial solution.
Parallel and distributed computing is one of the important domains which relies on efficient broadcasting. Hypercube and torus are the most used network topology in this domain. The widespread use is not only due to their simplicity but also is for their efficiency and high robustness (e.g., fault tolerance) while having an acceptable number of links. In this thesis, it is observed that the Cartesian product of a number of path and cycle graphs produces a valuable set of topologies, we called hyper-cylinders, which contain hypercube and Torus as well. Any hyper-cylinder shares many of the beneficial features of hypercube and torus and might be a suitable substitution in some cases. Some hyper-cylinders are also similar to other practically used topologies such as cube-connected cycles. In this thesis, the effect of the Cartesian product on broadcasting and broadcasting of hyper-cylinders under the Classical and Messy models is studied. This will add a valuable class of graphs to the limited classes of graphs which have a polynomially computable broadcast time. In the end, the relation between worst-case originators and diameters in trees is studied, which may help in the broadcast study of a larger class of graphs where any tree is allowed instead of a path in the Cartesian product
Properties and Algorithms of the KCube Interconnection Networks
The KCube interconnection network was first introduced in 2010 in order to exploit the
good characteristics of two well-known interconnection networks, the hypercube and the
Kautz graph. KCube links up multiple processors in a communication network with high
density for a fixed degree. Since the KCube network is newly proposed, much study is
required to demonstrate its potential properties and algorithms that can be designed to solve
parallel computation problems.
In this thesis we introduce a new methodology to construct the KCube graph. Also,
with regard to this new approach, we will prove its Hamiltonicity in the general KC(m; k).
Moreover, we will find its connectivity followed by an optimal broadcasting scheme in
which a source node containing a message is to communicate it with all other processors.
In addition to KCube networks, we have studied a version of the routing problem in the
traditional hypercube, investigating this problem: whether there exists a shortest path in a
Qn between two nodes 0n and 1n, when the network is experiencing failed components. We
first conditionally discuss this problem when there is a constraint on the number of faulty
nodes, and subsequently introduce an algorithm to tackle the problem without restrictions
on the number of nodes
- ā¦