O'Reilly logo

Multicore and GPU Programming by Gerassimos Barlas

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 8

Load balancing

Abstract

Program execution on a multicore platform, even a homogeneous one, does not guarantee performance gains. The key is in letting each of the cores contribute to the overall computation for the maximum amount of time. For anything but trivial problem settings, and especially for heterogeneous platforms like ones made of CPU and GPU cores, this calls for some form of load balancing, i.e., explicit or implicit workload shifts between the cores, so that idle times are eliminated to the maximum degree possible.

In this chapter we examine the two generic categories of load balancing algorithms: static which can be considered pro-active, meaning that they pre-calculate load assignments without expensive communications ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required