## Abstract

The range-join of sets R and S is defined to be the set containing all tuples (r, s) that satisfy e_{1} ≤ |r - s| ≤ e_{2}, where r ε{lunate} R, s ε{lunate} S, e_{1}, and e_{2} are fixed constants. This paper proposes an efficient parallel range-join algorithm in hypercubes. To compute the range-join of two sets R and S on a hypercube of p processors (p ≤ |R| = m ≤ |S| = n), the proposed algorithm simply permutes the elements of R to obtain their possible combinations with the elements of S and thus all possible local range-joins. Requiring only O( (m + n) p) local memory at each processor, our algorithm has a time complexity O((( n p) + m) log( n p)) in the best case when no element in S matches any element in R; O(T^{k}_{sort} + ( m p)) in the worst case when all elements in S match each element in R, where T^{k}_{sort} = O(k log k) when all elements in S are distinct, and T^{k}_{sort} = O(k) when all elements in S are equal, k = n p. The general-case time complexity of the algorithm is also shown.

Original language | English |
---|---|

Pages (from-to) | 303-313 |

Number of pages | 11 |

Journal | Parallel Computing |

Volume | 21 |

Issue number | 2 |

DOIs | |

Publication status | Published - Feb 1995 |

Externally published | Yes |

## Keywords

- Hypercube
- Parallel algorithms
- Permuting
- Processors
- Range-join
- Time complexity