Hybrid CUDA, OpenMP, and MPI parallel programming on multicore GPU clusters
Nowadays NVIDIA s CUDA is a general purpose scalable parallel programming model for writing highly parallel applications It provides several key abstractions - a hierarchy of thread blocks shared memory and barrier synchronization This model has proven quite successful at programming multithreaded many core GPUs and scales transparently to hundreds of cores scientists throughout industry and academia are already using CUDA to achieve dramatic speedups on production and research codes In this paper we propose a parallel programming approach using hybrid CUDA OpenMP and MPI programming which partition loop iterations according to the number of C1060 CPU nodes in a CPU cluster which consists of one C1060 and one S1070 Loop iterations assigned to one MPI process are processed in parallel by CUDA run by the processor cores in the same computational node (C) 2010 Elsevier B V All rights reserved
hybrid cuda openmp mpi parallel programming gpu