TY - JOUR
T1 - On exploiting heterogeneity for cluster based parallel multithreading using task duplication
AU - Kwok, Yu Kwong
N1 - Funding Information:
We thank the anonymous referees and Professor H. R. Arabnia for their insightful comments which have improved the presentation of this paper. This research was supported by a grant from the Hong Kong Research Grants Council under contract number HKU 7024/00E.
PY - 2003/5
Y1 - 2003/5
N2 - Triggered by the ever increasing advancements in processor and networking technology, a cluster of PCs connected by a high-speed network has become a viable and cost-effective platform for the execution of computation intensive parallel multithreaded applications. However, there are two research issues to be tackled in the scheduling problem for PC cluster computing: (1) how to reduce the communication overhead of executing a multithreaded application on the cluster; (2) how to exploit the heterogeneity, which is unavoidable in an evolving PC cluster, for the application. In this paper, we propose to use a duplication based approach in scheduling tasks/threads to a heterogeneous cluster of PCs. In duplication based scheduling, critical tasks are redundantly scheduled to more than one machine, in order to reduce the number of inter-task communication operations. The start times of the succeeding tasks are also reduced. The task duplication process is guided given the system heterogeneity in that the critical tasks are scheduled or replicated in faster machines. The algorithm has been implemented in our experimental application parallelization system for generating multithreaded parallel code executable on a cluster of Pentium PCs. Our experiments, using three numerical applications and one protocol processing kernel (multithreading per request), have indicated that heterogeneity of PC cluster is indeed useful for optimizing the execution of parallel multithreaded programs.
AB - Triggered by the ever increasing advancements in processor and networking technology, a cluster of PCs connected by a high-speed network has become a viable and cost-effective platform for the execution of computation intensive parallel multithreaded applications. However, there are two research issues to be tackled in the scheduling problem for PC cluster computing: (1) how to reduce the communication overhead of executing a multithreaded application on the cluster; (2) how to exploit the heterogeneity, which is unavoidable in an evolving PC cluster, for the application. In this paper, we propose to use a duplication based approach in scheduling tasks/threads to a heterogeneous cluster of PCs. In duplication based scheduling, critical tasks are redundantly scheduled to more than one machine, in order to reduce the number of inter-task communication operations. The start times of the succeeding tasks are also reduced. The task duplication process is guided given the system heterogeneity in that the critical tasks are scheduled or replicated in faster machines. The algorithm has been implemented in our experimental application parallelization system for generating multithreaded parallel code executable on a cluster of Pentium PCs. Our experiments, using three numerical applications and one protocol processing kernel (multithreading per request), have indicated that heterogeneity of PC cluster is indeed useful for optimizing the execution of parallel multithreaded programs.
KW - Heterogeneous systems
KW - Linux PC cluster
KW - Parallel multithreading
KW - Protocol processing
KW - Scheduling
KW - Task duplication
KW - Task graphs
UR - http://www.scopus.com/inward/record.url?scp=0037667731&partnerID=8YFLogxK
U2 - 10.1023/A:1022856623227
DO - 10.1023/A:1022856623227
M3 - Article
AN - SCOPUS:0037667731
SN - 0920-8542
VL - 25
SP - 63
EP - 72
JO - Journal of Supercomputing
JF - Journal of Supercomputing
IS - 1
ER -