This chapter presents a hybridization methodology for the development of high-performance linear algebra software for graphics processing units (GPUs). The methodology has been successfully used in MAGMA-a new generation of linear algebra libraries, similar in functionality to LAPACK, but extended for hybrid, GPU-based systems. Algorithms of interest are split into computational tasks. The tasks' execution is scheduled over the computational components of a hybrid system of multicore CPUs with GPU accelerators using StarPU-a runtime system for accelerator-based multicore architectures. StarPU enables the expression of parallelism through sequential-like code and schedules the different tasks over the hybrid processing units. Using the StarPU framework, development is faster and cheaper than the development of algorithms exclusively for GPUs. Moreover, this framework allows the exploration of the unique strengths of the various hardware components in a hybrid system, resulting in hybrid algorithms that are better performance-wise than corresponding homogeneous algorithms designed exclusively for either GPUs or multicore CPUs.
|Original language||English (US)|
|Title of host publication||GPU Computing Gems Jade Edition|
|Number of pages||12|
|State||Published - Dec 1 2012|
ASJC Scopus subject areas
- Computer Science(all)