Tag: a data-clustering algorithm on distributed memory multiprocessors