This paper presents a parallel join algorithm for the data-parallel execution model used in SIMD architectures. This algorithm is hash-based, i.e., the tuples in a relation are divided into different buckets based on the hash value of the join attribute. In this algorithm the buckets are maintained in a distributed fashion, i.e., the tuples in a bucket are stored in an array of processors. The join operation is performed in parallel over all the buckets. The algorithm presented here has been implemented and evaluated on the Connection Machine (CM-2). We present here the results of the experimental evaluation of this algorithm for different values of design parameters and work-load. Using experimental evaluations of the CM communication primitives we develop analytical models for the performance evaluation of this algorithm and demonstrate the effectiveness of these models.