Skip to Main Content
Programming Massively Parallel Processors, 3rd Edition
book

Programming Massively Parallel Processors, 3rd Edition

by David B. Kirk, Wen-mei W. Hwu
November 2016
Intermediate to advanced content levelIntermediate to advanced
576 pages
18h 22m
English
Morgan Kaufmann
Content preview from Programming Massively Parallel Processors, 3rd Edition
Chapter 11

Parallel patterns: merge sort

An introduction to tiling with dynamic input data identification

Li-Wen Chang and Jie Lv

Abstract

This chapter introduces the merge sort pattern whose parallelization requires each thread to dynamically identify its input position ranges. The fact that the input ranges are data dependent also creates extra challenges when we use the tiling technique to conserve memory bandwidth. As a result, we introduce the use of circular buffers to allow us to make full use of the memory data loaded. We show that introducing a more complex data structure such as a circular buffer can significantly increase the complexity of the code that uses these data structures. Thus, we introduce a simplified buffer access model ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Programming Massively Parallel Processors, 4th Edition

Programming Massively Parallel Processors, 4th Edition

Wen-mei W. Hwu, David B. Kirk, Izzat El Hajj
Engineering a Compiler, 2nd Edition

Engineering a Compiler, 2nd Edition

Keith D. Cooper, Linda Torczon
Algorithms, 4th Edition

Algorithms, 4th Edition

Robert Sedgewick, Kevin Wayne

Publisher Resources

ISBN: 9780128119877