251. Optimizing the exploitation of multicore processors and GPUs with OpenMP and OpenCL
- Author
-
Xavier Martorell, Alejandro Duran, Eduard Ayguadé, Marc Gonzalez, Rosa M. Badia, Judit Planas, Pieter Bellens, Jesús Labarta, Roger Ferrer, Universitat Politècnica de Catalunya. Departament d'Arquitectura de Computadors, and Universitat Politècnica de Catalunya. CAP - Grup de Computació d'Altes Prestacions
- Subjects
Computer network architectures ,Data structures ,Computer science ,Parallel programming (Computer science) ,Programming techniques ,Llenguatges de programació ,02 engineering and technology ,Parallel computing ,Programming languages (Electronic computers) ,Software_PROGRAMMINGTECHNIQUES ,Programació en paral·lel (Informàtica) ,computer.software_genre ,Computing methodologies ,Runtime system ,CUDA ,0202 electrical engineering, electronic engineering, information engineering ,Ordinadors, Xarxes d' -- Arquitectures ,Programmer ,Informàtica::Arquitectura de computadors::Arquitectures paral·leles [Àrees temàtiques de la UPC] ,020203 distributed computing ,Multi-core processor ,Models and principles ,020207 software engineering ,GPU cluster ,ComputerSystemsOrganization_PROCESSORARCHITECTURES ,Programming languages ,Informàtica::Llenguatges de programació [Àrees temàtiques de la UPC] ,Compilers ,Interpreters ,Programming paradigm ,Compiler ,Computer communication networks ,computer - Abstract
In this paper, we present OMPSs, a programming model based on OpenMP and StarSs, that can also incorporate the use of OpenCL or CUDA kernels. We evaluate the proposal on three different architectures, SMP, Cell/B.E. and GPUs, showing the wide usefulness of the approach. The evaluation is done with four different benchmarks, Matrix Multiply, BlackScholes, Perlin Noise, and Julia Set. We compare the results obtained with the execution of the same benchmarks written in OpenCL, in the same architectures. The results show that OMPSs greatly outperforms the OpenCL environment. It is more flexible to exploit multiple accelerators. And due to the simplicity of the annotations, it increases programmer’s productivity.
- Published
- 2010
- Full Text
- View/download PDF