STATIC LOAD BALANCING ON HETEROGENEOUS SYSTEMS CONTAINING CPU AND GPU

Scientific codes are usually highly parallelised and executed on heterogeneous architectures. Nowadays, it is common to use graphics accelerators (GPUs) to speed up data-parallel algorithms, and in the meantime, the already existing CPUs can help in this work. Distributing the jobs between systems i...

Full description

Saved in:
Bibliographic Details
Published inInternational Multidisciplinary Scientific GeoConference SGEM Vol. 18; no. 2.1; pp. 717 - 722
Main Author Szénási, Sándor
Format Conference Proceeding
LanguageEnglish
Published Sofia Surveying Geology & Mining Ecology Management (SGEM) 01.01.2018
Subjects
Online AccessGet full text
ISSN1314-2704
DOI10.5593/sgem2018/2.1/S07.091

Cover

More Information
Summary:Scientific codes are usually highly parallelised and executed on heterogeneous architectures. Nowadays, it is common to use graphics accelerators (GPUs) to speed up data-parallel algorithms, and in the meantime, the already existing CPUs can help in this work. Distributing the jobs between systems is always a difficult problem, especially when the processing units have different runtime environments and hardware architectures. There are several attempts for static and dynamic load balancing, but most of these are not applicable to a GPU based system because of its limitations (memory transfer time, command queue, etc.). This paper presents a static load balancing method especially for hybrid CPU and GPU environments. Based on preliminary benchmarks (runtime measurements for both the CPU and the GPU side), it can propose an efficient job distribution strategy. It takes into account the specialities of both hardware architectures, the linearity in the CPU runtime and the batch execution fashion experienced in the GPU side.
Bibliography:ObjectType-Conference Proceeding-1
SourceType-Conference Papers & Proceedings-1
content type line 21
ISSN:1314-2704
DOI:10.5593/sgem2018/2.1/S07.091