The end of Dennard scaling forced a shift to explicit parallelism, and the adoption of multicore parallelism as a vehicle for performance scaling (see Chapter 3, specifically Section 3.3.4). Even with multicore, the continued demand for both higher performance and energy efficiency has driven a growing interest in accelerators. In fact, their use has become so widespread that in many applications effective use of accelerators is a requirement. We discuss why accelerators are attractive, and when they can deliver large performance benefits. Specifically, we discuss both graphics processing units (GPUs) that aspire to be general parallel accelerators, and other emerging focused opportunities, such as machine learning accelerators. We close with broader discussion of where acceleration is most effective, and where it is not. Software architects designing applications will find this perspective on benefits and challenges of acceleration essential. These criteria will shape both design and evolution, as well as use of customized accelerator architectures in the future.
Review the options below to login to check your access.
Log in with your Cambridge Aspire website account to check access.
If you believe you should have access to this content, please contact your institutional librarian or consult our FAQ page for further information about accessing our content.