Multi-GPU support on the marrow algorithmic skeleton framework
Contribuinte(s) |
Paulino, Hervé |
---|---|
Data(s) |
20/11/2013
20/11/2013
2013
|
Resumo |
Dissertação para obtenção do Grau de Mestre em Engenharia Informática With the proliferation of general purpose GPUs, workload parallelization and datatransfer optimization became an increasing concern. The natural evolution from using a single GPU, is multiplying the amount of available processors, presenting new challenges, as tuning the workload decompositions and load balancing, when dealing with heterogeneous systems. Higher-level programming is a very important asset in a multi-GPU environment, due to the complexity inherent to the currently used GPGPU APIs (OpenCL and CUDA), because of their low-level and code overhead. This can be obtained by introducing an abstraction layer, which has the advantage of enabling implicit optimizations and orchestrations such as transparent load balancing mechanism and reduced explicit code overhead. Algorithmic Skeletons, previously used in cluster environments, have recently been adapted to the GPGPU context. Skeletons abstract most sources of code overhead, by defining computation patterns of commonly used algorithms. The Marrow algorithmic skeleton library is one of these, taking advantage of the abstractions to automate the orchestration needed for an efficient GPU execution. This thesis proposes the extension of Marrow to leverage the use of algorithmic skeletons in the modular and efficient programming of multiple heterogeneous GPUs, within a single machine. We were able to achieve a good balance between simplicity of the programming model and performance, obtaining good scalability when using multiple GPUs, with an efficient load distribution, although at the price of some overhead when using a single-GPU. projects PTDC/EIA-EIA/102579/2008 and PTDC/EIA-EIA/111518/2009 |
Identificador | |
Idioma(s) |
eng |
Publicador |
Faculdade de Ciências e Tecnologia |
Direitos |
openAccess |
Palavras-Chave | #Algorithmic skeletons #Multiple GPUs #Auto-tuning |
Tipo |
masterThesis |