Implementación CPU-GPU y comparativa de las bibliotecas BLAS-CUBLAS, LAPACK-CULA

Parallel programming has been available for a few decades using clusters of computers (sets of interconnected computers with shared memory and distributed memory); recently, it has been available using multicore CPUs and GPUs (Graphics Processing Unit). Parallel programming has been very useful in a...

Full description

Bibliographic Details
Authors: Angeles Arce, Misael, Flores Becerra, Georgina, Vidal, Antonio M.
Format: report
Publication Date:2011
Country:España
Institution:Universitat Politècnica de València (UPV)
Repository:RiuNet. Repositorio Institucional de la Universitat Politécnica de Valéncia
Language:Spanish
OAI Identifier:oai:riunet.upv.es:10251/11735
Online Access:https://riunet.upv.es/handle/10251/11735
Access Level:Open access
Keyword:Computación paralela
Gpu
Bibliotecas
Cublas
Cula
Description
Summary:Parallel programming has been available for a few decades using clusters of computers (sets of interconnected computers with shared memory and distributed memory); recently, it has been available using multicore CPUs and GPUs (Graphics Processing Unit). Parallel programming has been very useful in applications of science and engineering to reduce the sequential execution time by parallel numerical libraries for clusters, such as PBLAS and ScaLAPACK, which rely on the sequential numerical libraries BLAS and LAPACK. Parallel numerical libraries have been developed for GPUs, as CUBLAS and CULA (based on BLAS and LAPACK), developed in the CUDA programming platform, developed by NVIDIA. CUDA tries to exploit the GPUs potential. This report aims to introduce the configuration and use of BLAS, LAPACK, CUBLAS and CULA, from programs in C language, and to present a performance comparison among them, so the report can be used as a guide to support engineers and scientists who need this type of computation.