The Butterfly, Cube-Connected-Cycles and Benes Networks



Similar documents
Topological Properties

Interconnection Networks

System Interconnect Architectures. Goals and Analysis. Network Properties and Routing. Terminology - 2. Terminology - 1

Well-Separated Pair Decomposition for the Unit-disk Graph Metric and its Applications

Computational Geometry. Lecture 1: Introduction and Convex Hulls

The Goldberg Rao Algorithm for the Maximum Flow Problem

Interconnection Network Design

Data Structures Fibonacci Heaps, Amortized Analysis

Offline sorting buffers on Line

The fat-stack and universal routing in interconnection networks

Interconnection Networks Programmierung Paralleler und Verteilter Systeme (PPV)

Codes for Network Switches

Converting a Number from Decimal to Binary

Multistage Interconnect Networks

Online Bipartite Perfect Matching With Augmentations

Components: Interconnect Page 1 of 18

Lecture 23: Interconnection Networks. Topics: communication latency, centralized and decentralized switches (Appendix E)

Interconnection Network

Approximation Algorithms

Interconnection Networks. Interconnection Networks. Interconnection networks are used everywhere!

CSC2420 Fall 2012: Algorithm Design, Analysis and Theory

Outline BST Operations Worst case Average case Balancing AVL Red-black B-trees. Binary Search Trees. Lecturer: Georgy Gimel farb

Sorting revisited. Build the binary search tree: O(n^2) Traverse the binary tree: O(n) Total: O(n^2) + O(n) = O(n^2)

Algorithms and Data Structures

Binary Search Trees. Data in each node. Larger than the data in its left child Smaller than the data in its right child

Nimble Algorithms for Cloud Computing. Ravi Kannan, Santosh Vempala and David Woodruff

On the effect of forwarding table size on SDN network utilization

Lecture 15 An Arithmetic Circuit Lowerbound and Flows in Graphs

Introduction to Algorithms. Part 3: P, NP Hard Problems

= = 3 4, Now assume that P (k) is true for some fixed k 2. This means that

Design of LDPC codes

Representing Reversible Cellular Automata with Reversible Block Cellular Automata

Dual-Centric Data Center Network Architectures


arxiv:cs/ v1 [cs.dc] 30 May 2006

Chapter 7: Products and quotients

CSE 4351/5351 Notes 7: Task Scheduling & Load Balancing

Midterm Practice Problems

The Union-Find Problem Kruskal s algorithm for finding an MST presented us with a problem in data-structure design. As we looked at each edge,

Find-The-Number. 1 Find-The-Number With Comps

Persistent Data Structures

CMSC 858T: Randomized Algorithms Spring 2003 Handout 8: The Local Lemma

Discrete Mathematics Problems

Performance advantages of resource sharing in polymorphic optical networks

MapReduce and Distributed Data Analysis. Sergei Vassilvitskii Google Research

Lecture 2 Parallel Programming Platforms

Introduction to Parallel Computing. George Karypis Parallel Programming Platforms

Distributed Computing over Communication Networks: Topology. (with an excursion to P2P)

JUST-IN-TIME SCHEDULING WITH PERIODIC TIME SLOTS. Received December May 12, 2003; revised February 5, 2004

Data Structure [Question Bank]

Tolerating Multiple Faults in Multistage Interconnection Networks with Minimal Extra Stages

CIS 700: algorithms for Big Data

Private Approximation of Clustering and Vertex Cover

Randomized algorithms

Chapter 19. General Matrices. An n m matrix is an array. a 11 a 12 a 1m a 21 a 22 a 2m A = a n1 a n2 a nm. The matrix A has n row vectors

On the k-path cover problem for cacti

COMBINATORIAL PROPERTIES OF THE HIGMAN-SIMS GRAPH. 1. Introduction

PROVABLY GOOD PARTITIONING AND LOAD BALANCING ALGORITHMS FOR PARALLEL ADAPTIVE N-BODY SIMULATION

What cannot be measured on the Internet? Yvonne-Anne Pignolet, Stefan Schmid, G. Trédan. Misleading stars

From Last Time: Remove (Delete) Operation

Scalable Prefix Matching for Internet Packet Forwarding

A binary heap is a complete binary tree, where each node has a higher priority than its children. This is called heap-order property

Full and Complete Binary Trees

The LCA Problem Revisited

Lecture 2: Universality

Guessing Game: NP-Complete?

The Binary Blocking Flow Algorithm. Andrew V. Goldberg Microsoft Research Silicon Valley goldberg/

Outline 2.1 Graph Isomorphism 2.2 Automorphisms and Symmetry 2.3 Subgraphs, part 1

ON THE COMPLEXITY OF THE GAME OF SET.

Solving Geometric Problems with the Rotating Calipers *

Problem Set 7 Solutions

6.852: Distributed Algorithms Fall, Class 2

MULTISTAGE INTERCONNECTION NETWORKS: A TRANSITION TO OPTICAL

MATHEMATICAL ENGINEERING TECHNICAL REPORTS. The Best-fit Heuristic for the Rectangular Strip Packing Problem: An Efficient Implementation

A Practical Scheme for Wireless Network Operation

CS 598CSC: Combinatorial Optimization Lecture date: 2/4/2010

Generating models of a matched formula with a polynomial delay

Complexity of Union-Split-Find Problems. Katherine Jane Lai

Strategic Deployment in Graphs. 1 Introduction. v 1 = v s. v 2. v 4. e 1. e e 3. e 2. e 4

Fault-Tolerant Routing Algorithm for BSN-Hypercube Using Unsafety Vectors

NP-Hardness Results Related to PPAD

A Note on the Bertsimas & Sim Algorithm for Robust Combinatorial Optimization Problems

Finding and counting given length cycles

On the Multiple Unicast Network Coding Conjecture

arxiv: v1 [cs.dc] 7 Dec 2014

Dimitris Chatzidimitriou. Corelab NTUA. June 28, 2013

Weighted Sum Coloring in Batch Scheduling of Conflicting Jobs

Transcription:

The Butterfly, Cube-Connected-Cycles and Benes Networks Michael Lampis mlambis@softlab.ntua.gr NTUA The Butterfly, Cube-Connected-Cycles and Benes Networks p.1/16

Introduction Hypercubes are computationally powerful. Their drawback is that node degree increases with the size of the network. Butterfly, CCC and Benes networks are variations of the hypercube with constant degree. All three are computationally equivalent, and universal. They can simulate simple hypercube algorithms with a constant degree slowdown. The Butterfly, Cube-Connected-Cycles and Benes Networks p.2/16

The butterfly (i) An r-dimensional butterfly has (r + 1)2 r nodes corresponding to pairs (w, i) where w is an r-bit binary number and i is the level 0 i r. Two nodes (w, i), (w, i ) are linked iff i = i + 1 and w = w or w and w differ only in the i th bit. In total r2 r+1 edges. Butterflies with N(log N + 1) nodes can be viewed as hypercubes with N nodes (if we collapse the rows). The Butterfly, Cube-Connected-Cycles and Benes Networks p.3/16

Example of a 3-level butterfly The Butterfly, Cube-Connected-Cycles and Benes Networks p.4/16

The butterfly (ii) Advantages: Recursive structure, unique paths from level 0 to level r ( diameter O(log N)), bisection width Θ(N/ log N). Variation: wrapped butterfly. Level 0 and r are merged. Computationally equivalent to simple butterfly. Useful property: symmetry under cyclic shifts of the levels. The Butterfly, Cube-Connected-Cycles and Benes Networks p.5/16

The Cube-Connected-Cycles By replacing every node of an r-dimensional hypercube with a cycle of r nodes we get a CCC. Nodes are labelled (w, i), where w is the hypercube node label and i is the cycle label. CCCs with r2 r nodes can simulate hypercubes with 2 r nodes with O(r) slowdown. CCCs wrapped butterflies: embeddable with dilation 2. Diameter and bisection width are the same. The Butterfly, Cube-Connected-Cycles and Benes Networks p.6/16

CCCs wrapped butterfly The Butterfly, Cube-Connected-Cycles and Benes Networks p.7/16

The Benes Network Two back to back butterflies. (2r + 1)2 r nodes in total. Interesting property: Rearrangeable network. Useful in the simulation of arbitrary networks. Rearrangeability: We can connect all level-0 nodes one to one to all level-2r nodes using node disjoint paths (true for all permutations). The Butterfly, Cube-Connected-Cycles and Benes Networks p.8/16

Example of a Benes network The Butterfly, Cube-Connected-Cycles and Benes Networks p.9/16

Simulation of Arbitrary networks An N-node (wrapped) butterfly can simulate any bounded degree N-node network with at most O(log N) slowdown. This result also applies to simple butterflies, CCCs and Benes networks, since these can all simulate each other with a constant factor loss of efficiency. Hence, butterflies are universal The Butterfly, Cube-Connected-Cycles and Benes Networks p.10/16

Simulation - Proof sketch (i) Lemma: Given an N-node wrapped butterfly and a permutation π : [0... N] [0... N] there is a way of moving at most one packet from every node i to node π(i) within 3 log N steps without causing congestion in edges or nodes. Solution: Routing in 3 phases (similar to r 2 r array). Phases 1 and 3 permute packets in rows, using row edges. Phase 2 permutes packets in columns in at most 2r steps (rearrangeability of Benes). The Butterfly, Cube-Connected-Cycles and Benes Networks p.11/16

Simulation - Proof sketch (ii) To simulate a step of a network of maximum degree d we solve d packet routing problems using the previous lemma, after mapping each node of the network to a node of the butterfly. Problem: More than one packet may originate at or be headed to the same node in the same step (at most d). Solution: Use bipartite edge coloring to partition communication requests in d groups. The Butterfly, Cube-Connected-Cycles and Benes Networks p.12/16

Normal Hypercube Algorithms (i) Using previous simulation O(log 2 N) slowdown. Normal Hypercube algorithms can be simulated with a constant slowdown. Normal: Using only one dimension at each step and using consecutive dimensions in consecutive steps. All the mesh-of-trees algorithms described in 3.1 are normal. The Butterfly, Cube-Connected-Cycles and Benes Networks p.13/16

Normal Hypercube Algorithms (ii) N-node hypercube with N = r2 r is embedded to N-node CCC by mapping node v = v 1 v 2... v r+log r to node f(v) If k is the first dimension used by the algorithm then set s = v k+ r 2 +1... v k+ r 2 +log r Remove the bits of s from v to form u = v k v k+1... v k+ r v 2 k+ r 2 +log r+1... v k 1 (a cyclic shift of v) Set f(v) = (λ s (u), s + 1) where λ s () means s cyclic shifts to the right The Butterfly, Cube-Connected-Cycles and Benes Networks p.14/16

Normal Hypercube Algorithms (iii) In the next step dimension k 1 or k + 1 is used. If k + 1 is used, shift processes from nodes (w, i) to nodes (w, i + 1) Fine until we use a dimension outside of [k r 2 + 1, k + r 2 ] (different s). Produce a new mapping - only happens once in every r 2 steps and costs at most O(r). Total time (if T is hypercube time): 2T + 2T r O(r) = O(T ). The Butterfly, Cube-Connected-Cycles and Benes Networks p.15/16

Containment and Simulation Results r-dimensional wrapped butterflies and r-dimensional CCCs are Hamiltonian for r 2 Therefore N-node linear arrays can be simulated by N-node wrapped butterflies or CCCs without slowdown. Two-dimensional arrays can only be embedded with dilation Ω(log N) (the worst possible) However, O(1)-dimensional arrays can be simulated with constant slowdown. The Butterfly, Cube-Connected-Cycles and Benes Networks p.16/16