Title
Orchestrated scheduling and prefetching for GPGPUs
Abstract
In this paper, we present techniques that coordinate the thread scheduling and prefetching decisions in a General Purpose Graphics Processing Unit (GPGPU) architecture to better tolerate long memory latencies. We demonstrate that existing warp scheduling policies in GPGPU architectures are unable to effectively incorporate data prefetching. The main reason is that they schedule consecutive warps, which are likely to access nearby cache blocks and thus prefetch accurately for one another, back-to-back in consecutive cycles. This either 1) causes prefetches to be generated by a warp too close to the time their corresponding addresses are actually demanded by another warp, or 2) requires sophisticated prefetcher designs to correctly predict the addresses required by a future "far-ahead" warp while executing the current warp. We propose a new prefetch-aware warp scheduling policy that overcomes these problems. The key idea is to separate in time the scheduling of consecutive warps such that they are not executed back-to-back. We show that this policy not only enables a simple prefetcher to be effective in tolerating memory latencies but also improves memory bank parallelism, even when prefetching is not employed. Experimental evaluations across a diverse set of applications on a 30-core simulated GPGPU platform demonstrate that the prefetch-aware warp scheduler provides 25% and 7% average performance improvement over baselines that employ prefetching in conjunction with, respectively, the commonly-employed round-robin scheduler or the recently-proposed two-level warp scheduler. Moreover, when prefetching is not employed, the prefetch-aware warp scheduler provides higher performance than both of these baseline schedulers as it better exploits memory bank parallelism.
Year
DOI
Venue
2013
10.1145/2485922.2485951
ISCA
Keywords
Field
DocType
long memory latency,warp scheduling policy,prefetch-aware warp scheduler,commonly-employed round-robin scheduler,prefetching decision,recently-proposed two-level warp scheduler,consecutive warp,new prefetch-aware warp scheduling,current warp,orchestrated scheduling,memory bank parallelism
Memory bank,Cache,Computer science,CUDA,Scheduling (computing),Parallel computing,Real-time computing,General-purpose computing on graphics processing units,Instruction prefetch,Graphics processing unit,Performance improvement
Conference
Volume
Issue
ISSN
41
3
0163-5964
Citations 
PageRank 
References 
87
1.89
32
Authors
7
Name
Order
Citations
PageRank
Adwait Jog156823.32
Onur Kayıran235613.47
Asit K. Mishra3121646.21
Mahmut T. Kandemir47371568.54
Onur Mutlu59446357.40
Ravishankar Iyer672035.52
Chita R. Das7103859.34