Document details

A framework for scientific computing with GPUs

Author(s): Oliveira, Luís Miguel Picciochi de

Date: 2012

Persistent ID: http://hdl.handle.net/10362/7817

Origin: Repositório Institucional da UNL

Subject(s): Job scheduling; GPGPU; OpenCL; Run-time support; Distributed computing; Scientific computing


Description

Commodity hardware nowadays includes not only many-core CPUs but also Graphics Processing Units (GPUs) whose highly data-parallel computational capabilities have been growing at an exponential rate. This computational power can be used for purposes other than graphics-oriented applications, like processor-intensive algorithms as found in the scientific computing setting. This thesis proposes a framework that is capable of distributing computational jobs over a network of CPUs and GPUs alike. The source code for each job is an OpenCL kernel, and thus universal and independent from the specific architecture and CPU/GPU type where it will be executed. This approach releases the software developer from the burden of specific, customized revisions of the same applications for each type of processor/hardware, at the cost of a possibly sub-optimal but still very efficient solution. The proposed run-time scales up as more and more powerful computing resources become available, with no need to recompile the application. Experiments allowed to conclude that, although performance improvement achievements clearly depend on the nature of the problem and how it is coded, speedups in a distributed system containing both GPUs and multi-core CPUs can be up to two orders of magnitude.

Dissertação para obtenção do Grau de Mestre em Engenharia Informática

Document Type Master thesis
Language English
Advisor(s) Lourenço, João
Contributor(s) Oliveira, Luís Miguel Picciochi de
facebook logo  linkedin logo  twitter logo 
mendeley logo

Related documents

No related documents