May 2022
Intermediate to advanced
580 pages
18h 32m
English
With special contributions from Li-Wen Chang and Jie Lv
This chapter introduces the ordered merge pattern whose parallelization requires each thread to dynamically identify its input position ranges. Because the input ranges are data dependent, we resort to a fast search implementation of the co-rank function to identify the input range for each thread. The fact that the input ranges are data dependent also creates extra challenges when we use tiling technique to conserve memory bandwidth and enable memory coalescing. As a result, we introduce the use of circular buffers to allow us to make full use of the data loaded from global memory. We have shown that introducing ...
Read now
Unlock full access