## Abstract

A class of communication tasks, called isotropic, was introduced in [15], and minimum completion time algorithms for all tasks in this class were found. Isotropic tasks are characterized by a type of symmetry with respect to origin node. In this paper we consider the problem of transposing a sparse matrix of size N × N with a diagonal band of size 2^{β + 1} + 1, which is stored by columns in a hypercube network of N = 2^{d} processors. We propose an assignment of matrix columns to hypercube nodes such that the transposition becomes a 'nearly isotropic' task, that is, it looks 'almost identical' to all nodes. Under this assignment, we give an algorithm to transpose the matrix in 2^{β} steps. We prove that the algorithm given is optimal over all affine assignments of columns to processors. We also derive a lower bound on the minimum number of steps required to transpose a banded matrix, which holds for any possible assignment of matrix columns to hypercube processors. In the case that 2^{β + 1} + 1 = Θ(N^{c}), for some constant c ε{lunate} (0, 1], we prove that the completion time of our transposition algorithm is of the same order of magnitude with the lower bound. We further show that [ d β] banded matrices, each of bandwidth 2^{β + 1} + 1, can be stored by columns in a hypercube so that all of them can be concurrently transposed in 2^{β + 1} steps. Finally, we modify our algorithms so that they apply to arbitrary matrix bandwidths and multiple column storage by each processor, while maintaining their efficiency.

Original language | English (US) |
---|---|

Pages (from-to) | 243-264 |

Number of pages | 22 |

Journal | Parallel Computing |

Volume | 21 |

Issue number | 2 |

DOIs | |

State | Published - Feb 1995 |

Externally published | Yes |

## Keywords

- Banded matrices
- Communication algorithm
- Hypercubes
- Isotropic task
- Linear algebra
- Transposition

## ASJC Scopus subject areas

- Software
- Theoretical Computer Science
- Hardware and Architecture
- Computer Networks and Communications
- Computer Graphics and Computer-Aided Design
- Artificial Intelligence