Por favor, use este identificador para citar o enlazar este ítem:http://uvadoc.uva.es/handle/10324/29113
Título
Multi-Device Controllers: A Library To Simplify The Parallel Heterogeneous Programming
Año del Documento
2017
Editorial
Springer
Descripción
Producción Científica
Documento Fuente
International Journal of Parallel Programming, ISSN 0885-7458, Springer
Resumen
Current HPC clusters are composed by several machines with different computation capabilities and different kinds and families of accelerators. Programming efficiently for these heterogeneous systems has become an important challenge. There are many proposals to simplify the programming and management of accelerator devices, and the hybrid programming, mixing accelerators and CPU cores. However, in many cases, portability compromises the efficiency on different devices, and there are details concerning the coordination of different types of devices that should still be tackled by the programmer. In this work, we introduce the Multi-Controller, an abstract entity implemented in a library that coordinates the management of heterogeneous devices, including accelerators with different capabilities and sets of CPU-cores. Our proposal improves state-of-the-art solutions, simplifying data partition, mapping and the transparent deployment of both, simple generic kernels portable across different device types, and specialized implementations defined and optimized using specific native or vendor programming models (such as CUDA for NVIDIA’s GPUs, or OpenMP for CPU-cores). The run-time system automatically selects and deploys the most appropriate implementation of each kernel for each device, managing data movements and hiding the launch details. The results of an experimental study with five study cases indicates that our abstraction allows the development of flexible and highly efficient programs that adapt to the heterogeneous environment.
Revisión por pares
SI
Patrocinador
MICINN (Spain) and ERDF program of the European Union: HomProg-HetSys project (TIN2014-58876-P), CAPAP-H6 (TIN2016-81840-REDT), and COST Program Action IC1305: Network for Sustainable Ultrascale Computing (NESUS).
Version del Editor
Propietario de los Derechos
Springer
Idioma
eng
Derechos
restrictedAccess
Aparece en las colecciones
Ficheros en el ítem
La licencia del ítem se describe como Attribution 4.0 International