# Network properties and a Counterexample

Tom Kelliher, CS 315

Feb. 5, 1999

# Administrivia

### Announcements

Will assign homework Monday.

### Assignment

Read 1.2.1, 1.2.2

### From Last Time

Linear array sorting example, network properties.

### Outline

1. Network (graph) properties.

2. A lower bound counterexample.

3. Properties of our fixed-network connection model.

### Coming Up

Carry-lookahead addition, parallel prefix computations.

# Lower Bound Arguments

The following are tools we use to establish lower bounds on problems and, hence, show that a particular parallel algorithm is optimal. As we will see, they must be applied with care.

Assume the bit model, so we have an sorting network in the following.

1. I/O bandwidth.

What is the I/O bandwidth of the sorting network? This makes sorting .

2. Diameter of the network: Defined as the maximum distance between two vertices in the graph.

What is the diameter of the sorting graph?

Can we construct a sorting problem that will force the two most distant cells to communicate?

What's the lower bound from this perspective?

3. Bisection width of the network: Defined as the number of edges which must be cut to split the graph in ``half.''

What is the bisection width of the sorting graph?

Can we construct a sorting problem that will force all the data to cross this boundary?

What's the lower bound from this perspective?

# A Counterexample

Consider sorting within a complete binary tree: 1. Assumption: All bits appear simultaneously.

2. I/O bandwidth? Diameter? Bisection width?

3. Lower bound for sorting on a binary tree?

4. Almost right. Holds for .

5. So, how do we beat the lower bound? By counting.

## Example: k=1

1. Problem of unary to binary conversion.

2. ``Easy'' if interior cells are word processors.

3. Each interior processor need only be a serial adder and we do bit-wise serial addition with numbers transmitted lsb-first.

Example: Bit-wise addition of 0110 and 0011.

4. Example: counting the 1's when N = 8.

5. Setting the leaf bits:
1. Assume we have m 1's.

2. Set the rightmost m leaves. Clear the leftmost N - m leaves.

3. Observation: right 0 leaf is numbered N - 1 - m.

This is the bit-wise complement of m.

4. Use N - 1 - m to find a path to that leave, clearing leaves to the left, setting leaves to the right, and clearing that leave.

# Properties of the Fixed-Connection Network Model

1. Processor properties:
1. Local control.

2. Computation is a function of local storage and local inputs.

3. Variations. Processor might know such things as its address, topology/size of the network, time.

Storage is usually constant, but may vary with size of network.

4. A bit processor may perform a constant number of bit operations per step. Similarly for a word processor.

5. Limits on word size usually .

6. Packets: indivisible communication data stamped with a key.

2. Interconnection properties:
1. Connections may not vary with time.

2. A constant amount of communication (bits, words, packets, as appropriate) can occur across a connection per step.

3. Bounded-degree network. Sometimes degree will be O .

Size is polynomial in N.

3. I/O protocol properties:
1. Each input is provided only once.

2. I/O is when and where oblivious: the time and location, for each piece of data, of I/O must be specified in advance.

Without this restriction, we could sort in constant time.

4. Comment: This model describes systolic VLSI very well. It doesn't describe general VLSI well since we don't have ``long'' wires. But, how does one model the communication properties of a long wire?

Thomas P. Kelliher
Fri Feb 5 10:06:30 EST 1999
Tom Kelliher