Summary: | 碩士 === 國立高雄應用科技大學 === 電機工程系 === 100 === OMPICUDA is a programming framework proposed for the hybrid CPU/GPU computing architecture. In this framework, users can use mixing MPI/OpenMP programs to write their programs and simultaneously make use of CPUs and GPUs to execute the same program. However, OMPICUDA faces the two problems of load balance and resource competition. Since the difference of computational capability between CPU and GPU is very big, user programs will not obtain a good performance if it is not proper to distribute the amount of problem data over CPUs and GPUs for parallel computation. On the other hand, GPUs are space-sharing resources. When a program occupies a GPU, other programs have to wait for this GPU until this program is finished. Consequently, the waiting time of these programs will increases to degrade their execution performance. As previously described, this study is aimed at resolving the problems of load balance and resource competition for OMPICUDA. This study develops a set of load-balancing interface for users to easily partition their problems for achieving load balancing, and a mechanism of resource reallocation to minimize the time of waiting resources by integrating VM migration and GridCUDA.
|