Contributions to the efficient use of general purpose coprocessorskernel density estimation as case study
- José Miguel Alonso Directeur/trice
- Alexander Mendiburu Alberro Directeur/trice
Université de défendre: Universidad del País Vasco - Euskal Herriko Unibertsitatea
Fecha de defensa: 19 juin 2015
- Clemente Rodríguez Lafuente President
- Jon Sáenz Aguirre Secrétaire
- José Ángel Gregorio Monasterio Rapporteur
- Diego López de Ipiña González de Artaza Rapporteur
- Leonel Augusto Pires Seabara de Sousa Rapporteur
Type: Thèses
Résumé
The high performance computing landscape is shifting from assemblies of homogeneous nodes towards heterogeneous systems, in which nodes consist of a combination of traditional out-of-order execution cores and accelerator devices. Accelerators provide greater theoretical performance compared to traditional multi-core CPUs, but exploiting their computing power remains as a challenging task.This dissertation discusses the issues that arise when trying to efficiently use general purpose accelerators. As a contribution to aid in this task, we present a thorough survey of performance modeling techniques and tools for general purpose coprocessors. Then we use as case study the statistical technique Kernel Density Estimation (KDE). KDE is a memory bound application that poses several challenges for its adaptation to the accelerator-based model. We present a novel algorithm for the computation of KDE that reduces considerably its computational complexity, called S-KDE. Furthermore, we have carried out two parallel implementations of S-KDE, one for multi and many-core processors, and another one for accelerators. The latter has been implemented in OpenCL in order to make it portable across a wide range of devices. We have evaluated the performance of each implementation of S-KDE in a variety of architectures, trying to highlight the bottlenecks and the limits that the code reaches in each device. Finally, we present an application of our S-KDE algorithm in the field of climatology: a novel methodology for the evaluation of environmental models.