Previous [ 1] [ 2] [ 3] [ 4] [ 5] [ 6] [ 7] [ 8] [ 9] [ 10] [ 11] [ 12] [ 13] [ 14] [ 15] [ 16]

@

Journal of Information Science and Engineering, Vol. 22 No. 4, pp. 785-798 (July 2006)

Design and Implementation of the OpenMP Programming Interface on Linux-based SMP Clusters*

Tyng-Yeu Liang, Shih-Hsien Wang, Ce-Kuen Shieh, Ching-Min Huang and Liang-I Chang
Department of Electrical Engineering
National Kaohsiung University of Applied Sciences
Kaohsiung, 807 Taiwan
+Department of Electrical Engineering
National Cheng Kung University
Tainan, 701 Taiwan

Recently, cluster computing has successfully provided a cost-effective solution for data-intensive applications. In order to make the programming on clusters easy, many programming toolkits such as MPICH, PVM, and DSM have been proposed in past researches. However, these programming toolkits are not easy enough for common users to develop parallel applications. To address this problem, we have successfully implemented the OpenMP programming interface on a software distributed shared memory system called Teamster. On the other hand, we add a scheduling option called Profiled Multiprocessor Scheduling (PMS) into the OpenMP directive. When this option is selected in user programs, a load balance mechanism based on the PMS algorithm will be performed during the execution of the programs. This mechanism can automatically balance the workload among the execution nodes even when the CPU speed and the processor number of each node are not identical. In this paper, we will present the design and implementation of the OpenMP API on Teamster, and discuss the results of performance evaluation in the test bed.

Keywords: Linux-based SMP, OpenMP, software distributed shared memory, Teamster, profiled multiprocessor scheduling

Full Text () Retrieve PDF document (200607_05.pdf)

Received July 4, 2005; accepted April 11, 2006.
Communicated by Yau-Hwang Kuo.
* This work was supported by the freeware project of the National Science Council of Taiwan, R.O.C., under project No. 93-2218-E-151-004.