Provided by: Duke University
Date Added: Mar 2014
Graphics Processing Units (GPUs) have specialized throughput-oriented memory systems optimized for streaming writes with scratchpad memories to capture locality explicitly. Expanding the utility of GPUs beyond graphics encourages designs that simplify programming (e.g., using caches instead of scratchpads) and better support irregular applications with finer-grain synchronization. The authors' hypothesis is that, like CPUs, GPUs will benefit from caches and coherence, but that CPU-style \"Read For Ownership\" (RFO) coherence is inappropriate to maintain support for regular streaming workloads.