43 research outputs found

    Simulating the Bitonic Sort on a 2D-mesh with P Systems

    Get PDF
    This paper gives a version of the parallel bitonic sorting algorithm of Batcher, which can sort N elements in time O(log2 N). When applying it to the 2D mesh architecture, two indexing functions are considered, row-major and shuffled row- major. Some properties are proved for the later, together with a correctness proof of the proposed algorithm. Two simulations with P systems are proposed and discussed. The first one uses dynamic communication graphs and follows the guidelines of the mesh version of the algorithm. The second simulation requires only symbol rewriting rules in one membrane

    Optimal Randomized Algorithms for Multipacket and Wormhole Routing on the Mesh

    Get PDF
    In this paper, we present a randomized algorithm for the multipacket (i.e., k - k) routing problem on an n x n mesh. The algorithm competes with high probability in at most kn + O(k log n) parallel communication steps, with a constant queue size of O(k). The previous best known algorithm [4] takes [5/4] kn + O([kn/f(n)]) steps with a queue size of O(k f(n)) (for any 1 ≀ f (n) ≀ n). We will also present a randomized algorithm for the wormhole model permutation routing problem for the mesh that completes in at the most kn + O(k log n) steps, with a constant queue size of O(k), where k is the number of flits that each packet is divided into. The previous best result [6] was also randomized and had a time bound of kn + O ([kn/f(n)]) with a queue size of O(k f(n)) for any 1 ≀ f(n). The two algorithms that we will present are optimal with respect to queue size. The time bounds are within a factor of two of the only known lower bound

    Constant Queue Route on a Mesh

    Get PDF
    Packet routing is an important problem in parallel computation since a single step of inter-processor communication can be thought of as a packet routing task. In this paper we present an optimal algorithm for packet routing on a mesh-connected computer. Two important criteria for judging a routing algorithm will be 1) its run time, i.e., the number of parallel steps it takes for the last packet to reach its destination, and 2) its queue size, i.e., the maximum number of packets that any node will have to store at any time during routing. We present a 2n - 2 step routing algorithm for an n x n mesh that requires a queue size of only 58. The previous best known result is a routing algorithm with the same time bound but with a queue size of 672. The time bound of 2n - 2 is optimal. A queue size of 672 is rather large for practical use. We believe that the queue size of our algorithm is practical. The improvement in the queue size is possible due to (from among other things) a new 3s + o(s) sorting algorithm for an s x s mesh

    Adaptive AT2 Optimal Algorithms on reconfigurable meshes

    No full text
    Recently a few self-simulation algorithms have been developed to execute algorithms on a reconfigurable mesh (RM) of size smaller than recommended in those algorithms. Optimal slowdown, in self-simulation, has been achieved with the compromise that the resultant algorithms fail to remain AT2 optimal. In this paper we have introduced, for the first time, the idea of adaptive algorithm which runs on RM of variable sizes without compromising the AT2 optimality. We have supported our idea by developing adaptive algorithms, for sorting items and computing the contour of maximal elements of a set of planar points on RM. We have also conjectured that to obtain an AT2 algorithm to solve a problem of size n with I(n) information content on an RM of size p x q where pq=kI(n), it is sufficient to form buses of length O (k)

    \u3cem\u3ek-k\u3c/em\u3e Routing, \u3cem\u3ek-k\u3c/em\u3e Sorting, and Cut Through Routing on the Mesh

    Get PDF
    In this paper we present randomized algorithms for k-k routing, k-k sorting, and cut through routing. The stated resource bounds hold with high probability. The algorithm for k-k routing runs in [k/2]n+o(kn) steps. We also show that k-k sorting can be accomplished within [k/2] n+n+o(kn) steps, and cut through routing can be done in [3/4]kn+[3/2]n+o(kn) steps. The best known time bounds (prior to this paper) for all these three problems were kn+o(kn). [kn/2] is a known lower bound for all the three problems (which is the bisection bound), and hence our algorithms are very nearly optimal. All the above mentioned algorithms have optimal queue length, namely k+o(k). These algorithms also extend to higher dimensional meshes

    Sparse Quantum Codes from Quantum Circuits

    Get PDF
    Sparse quantum codes are analogous to LDPC codes in that their check operators require examining only a constant number of qubits. In contrast to LDPC codes, good sparse quantum codes are not known, and even to encode a single qubit, the best known distance is O(√n log(n)), due to Freedman, Meyer and Luo. We construct a new family of sparse quantum subsystem codes with minimum distance n[superscript 1 - Δ] for Δ = O(1/√log n). A variant of these codes exists in D spatial dimensions and has d = n[superscript 1 - Δ - 1/D], nearly saturating a bound due to Bravyi and Terhal. Our construction is based on a new general method for turning quantum circuits into sparse quantum subsystem codes. Using this prescription, we can map an arbitrary stabilizer code into a new subsystem code with the same distance and number of encoded qubits but where all the generators have constant weight, at the cost of adding some ancilla qubits. With an additional overhead of ancilla qubits, the new code can also be made spatially local.National Science Foundation (U.S.) (Grant CCF-1111382)United States. Army Research Office (Contract W911NF-12-1-0486

    Universal Wormhole Routing

    Get PDF
    In this paper, we examine the wormhole routing problem in terms of the “congestion” c and “dilation” d for a set of packet paths. We show, with mild restrictions, that there is a simple randomized algorithm for routing any set of P packets in O(cdη+cLηlogP) time with high probability, where L is the number of flits in a packet, and η=min{d,L}; only a constant number of flits are stored in each queue at any time. Using this result, we show that a fat-tree network of area Θ(A) can simulate wormhole routing on any network of comparable area with O(log^3 A) slowdown, when all worms have the same length. Variable-length worms are also considered. We run some simulations on the fat-tree which show that not only does wormhole routing tend to perform better than the more heavily studied store-and-forward routing in this context, but that performance superior to our provable bound is attainable in practice

    Selection, Routing and Sorting on the Star Graph

    Get PDF
    We consider the problems of selection, routing and sorting on an n-star graph (with n! nodes), an interconnection network which has been proven to possess many special properties. We identify a tree like subgraph (which we call as a \u27(k, l, k) chain network\u27) of the star graph which enables us to design efficient algorithms for the above mentioned problems. We present an algorithm that performs a sequence of n prefix computations in O(n2) time. This algorithm is used as a subroutine in our other algorithms. In addition we offer an efficient deterministic sorting algorithm that runs in O(n3lg n) steps. Though an algorithm with the same time bound has been proposed before, our algorithm is very simple and is based on a different approach. We also show that sorting can be performed on the n star graph in time O(n3) and that selection of a set of uniformly distributed n keys can be performed in O(n2) time with high probability. Finally, we also present a deterministic (non oblivious) routing algorithm that realizes any permutation in O(n3) steps on the n-star graph. There exists an algorithm in the literature that can perform a single prefix computation in O(n lg n) time. The best known previous algorithm for sorting has a run time of O(n3 lg n) and is deterministic. To our knowledge, the problem of selection has not been considered before on the star graph
    corecore