cs0105034/intro.tex
1: The (binary) hypercube network has been widely considered as a network
2: for parallel computing, but its VLSI layout requires a great deal of
3: wiring area.  Studies of communications capabilities of the hypercube
4: versus other networks
5: (e.g.,~\cite{AbrahamP1991,Dally1990,RanadeJ1987,GreenbergG1996ECA,GreenbergG1996ECN})
6: have varied the width of links between nodes in order to equalize the
7: hardware costs of the networks being compared under various cost
8: measures, some of which are closely related to VLSI layout area.
9: 
10: Recall that the interconnection pattern for a hypercube of $N^2$ nodes
11: can be specified by numbering the nodes from $0$ to $N^2-1$ and
12: requiring a link between any two nodes whose numbers expressed in
13: binary differ in exactly one bit.  When the numbers differ in the
14: $i$th bit from the right, we refer to the link between the nodes as a
15: dimension $i$ link.  (Though the links between nodes are generally
16: considered to be bidirectional, we count them as one wire for
17: simplicity.  Results quoted in this paper must be multiplied by $2$ to
18: obtain exact correspondence with results given in
19: Dally~\cite{Dally1990} or Ranade and Johnsson~\cite{RanadeJ1987}.)
20: 
21: The network cost measure used by Dally~\cite{Dally1990} is bisection
22: width (the minimum number of wires that must be cut to divide the set
23: of nodes into two equal halves with no connections between them).
24: This measure may be justified by Thompson's lower
25: bound~\cite{Thompson1979,Thompson1980} indicating that area is at
26: least $1/4$ of the square of the bisection width.  Thompson's bound,
27: however, does not give a precise correspondence between bisection
28: width and area.  Furthermore, as Dally notes, the maximum wire density
29: (number of wires that must cross a cutline) does not occur at the
30: bisection in the ``normal layout'' of the hypercube (nodes placed as
31: in Figure~\ref{fig:normal-layout}).  (Note that each row and column of
32: the layout is itself a hypercube, so we can focus henceforth on the
33: layout of an $N$-node hypercube in a single row.)
34: 
35: Ranade and Johnsson~\cite{RanadeJ1987} consider the actual area required
36: for the normal layout by bounding the number of horizontal tracks per
37: row required to lay out the interconnections (following the common
38: approach of placing vertical wires in one chip layer and horizontal
39: wires in another).  (The situation involving vertical tracks is
40: completely analogous to that involving horizontal tracks.)  They
41: focus, however, on optimality to within an unspecified constant factor
42: and only upper bound the number of tracks per row as $N-1$, as
43: obtained by the assignment of wires to tracks illustrated in
44: Figure~\ref{fig:normal-layout}.
45: 
46: \begin{figure}
47:  \centering
48:  \inputnospell{normal-layout.tex}
49:  \caption{The normal hypercube layout and a naive track assignment for $N^2=64$.}
50:  \label{fig:normal-layout}
51:  \end{figure}
52: 
53: A more sophisticated track assignment by Chen, Agrawal, and
54: Burke~\cite{ChenAB1993} (with a different ordering of the nodes), yields
55: $N-\lgN$ tracks per row.\footnote{ We use $\lg x$ for
56: $\log_{2}x$, and we assume $N$ is a power of $2$.}
57: 
58: A still better measure for the number of tracks per row, utilized
59: in~\cite{GreenbergG1996ECA,GreenbergG1996ECN}, is
60: $\floor{2N/3}$.  That this number represents the congestion for
61: the natural embedding of the hypercube into a square grid also follows
62: from an independent statement of Nakano~\cite{Nakano1994} and an
63: argument of Bezrukov \etal~\cite{BezrukovCHRS2000}.
64: 
65: This paper gives a short alternative proof of the congestion result
66: that also yields a concise formula for the wire density at every cut
67: position and a full characterization of all positions where density is
68: maximized.  The analysis is then extended to account for the exact
69: placement of the terminals and wires in the layout.  It would be
70: desirable to make all nodes identical, e.g., by placing the
71: connections of each node in order of dimension (as in
72: Figure~\ref{fig:normal-layout}); this would be particularly convenient
73: when implementing the common form of hypercube algorithm referred to
74: as a ``normal algorithm'' (e.g., see~\cite{Leighton1992}), in which
75: only one dimension of communication links is used at any step, and the
76: dimensions are used consecutively.  Uniformity of nodes is also
77: helpful for assembling the system and for replacing defective nodes.
78: We show that such a uniform approach incurs a penalty of exactly one
79: track per row in the VLSI layout, whereas full freedom to permute the
80: terminals allows a layout with $\floor{2N/3}$ tracks per row.
81: 
82: The rest of this paper is organized as follows.
83: Section~\ref{sec:density} introduces notation and provides background
84: regarding the congestion result.  Section~\ref{sec:tracks}, gives a
85: simple formula for the wire density at each intercolumn position and a
86: full characterization of those positions where the density is
87: maximized.  Then the analysis is extended to include the density at
88: cutlines that run through nodes, which completes the analysis of the
89: number of wiring tracks required. Section~\ref{sec:alt}, comments on
90: hypercube layouts in which the nodes are placed differently than in
91: the normal scheme illustrated in Figure~\ref{fig:normal-layout}.
92: