Maintaining dynamic ordered sets on processor networks

We present randomized data structures for maintaining a dynamic ordered set on sparse networks of processors. For any constant D, on a D-dimensional mesh with side length L and total number of processors N = LD, we can process any N least-upper-bound (also called find-rein, successor) queries on a set with M elements in time O(L + log MN) with high probability. We can also process any N insert queries in amortized time O(L + log MN) with high probability, per group of N queries. For Butterfly networks, we only have fast randomized algorithms for processing least-upperbound (lub) queries, and these algorithms require parallel slackness. In particular, we show how to process any group of N log N lub queries using an N processor butterfly network in time O((log N)(log MN)). All of these algorithms only use O(li4/N) storage per processor and are optimal to within constant factors. Finally, we note a simple lower bound on the performance of any deterministic algorithm that uses at most O(M/N) storage per processor, which indicates the need for randomized algorithms.