Splittable Single Source-Sink Routing on CMP Grids: A Sublinear Number of Paths Suffice
Résumé
In single chip multiprocessors (CMP) with grid topologies, a significant part of power consumption is attributed to communications between the cores of the grid. We investigate the problem of routing communications between CMP cores using shortest paths, in a model in which the power cost associated with activating a communication link at a transmission speed of $f$ bytes/second is proportional to $f^\alpha$, for some constant exponent $\alpha > 2$. Our main result is a trade-off showing how the power required for communication in CMP grids depends on the ability to split communication requests between a given pair of node, routing each such request along multiple paths. For a pair of cores in a $n \times n$ grid, the number of available communication paths between them grows rapidly with $n$. By contrast, we show that optimal power consumption (up to constant factors) can be achieved by splitting each communication request into $k$ paths, starting from a threshold value of $k = \Theta (n^{1/\left(\alpha-1\right)})$. This threshold is much smaller than $n$ for typical values of $\alpha \approx 3$, and may be considered practically feasible for use in routing schemes on the grid. More generally, we provide efficient algorithms for routing multiple $k$-splittable communication requests between two cores in the grid, providing solutions within a constant approximation of the optimum cost. We support our results with experimental evidence, showing that for practical instances, our approach using $k$-splittable requests leads to a power cost close to that of the optimal solution with arbitrarily splittable requests, starting from the stated threshold value of $k$.
Origine : Fichiers produits par l'(les) auteur(s)