1st IEEE Computer Society International Workshop on Cluster Computing
Evaluation of the Performance of Multithreaded Cilk Runtime System on SMP Clusters
Melbourne, Australia
December 02-December 03
ISBN: 0-7695-0343-8
Multithreading is widely accepted in shared memory system such as the symmetric multiprocessor (SMP) machine. However, in the clustering environment, multithreading is considered expensive and difficult. Process is still used as the basic scheduling unit in the majority of parallel programming systems on clusters. To investigate the overhead a runtime system may have in supporting multithreading, an extended multithreaded Cilk runtime system, called distributed Cilk, was evaluated on a cluster of SMP PCs. The distributed Cilk embodies the algorithmic features of the Cilk language, supports software distributed shared memory (DSM) for all Cilk threads in the cluster, and provides user-level cluster-wide locking. The performance of the distributed Cilk was evaluated using three problems, which were parallelized with different strategies to represent various parallel programming paradigms. The results were also compared with those of TreadMarks, a typical software DSM implementation for clusters with no support for multithreading. The experiments show that multithreading Cilk programs written in a divide-and-conquer fashion with good data locality can achieve comparable performance with the corresponding multiple-process TreadMarks programs. The results shed light on efficient multithreading for clusters.
Index Terms:
cluster computing, multithreading, performance evaluation.
Citation:
Liang Peng, Mingdong Feng, Chung-Kwong Yuen, "Evaluation of the Performance of Multithreaded Cilk Runtime System on SMP Clusters," iwcc, pp.43, 1st IEEE Computer Society International Workshop on Cluster Computing, 1999