Sacat: Streaming-aware conflict-avoiding thrashing-resistant GPGPU cache management scheme

Mahmoud Khairy, Mohamed Zahran, Amr Wassal

Research output: Contribution to journalArticlepeer-review


Modern graphical processing units (GPUs) are equippedwith general-purpose L1 and L2 caches to reduce the memory bandwidth demand and improve the performance of some irregular general-purposeGPU (GPGPU) applications. However, due to the massivemultithreading, GPGPU caches suffer fromsevere resource contention and lowdata-sharing whichmay lead to performance degradation instead. This paper proposes a low-cost streaming-aware conflict-avoiding thrashing-resistant (SACAT)GPGPU cache management scheme that efficiently utilizes the GPGPU cache resources and addresses all the problems associatedwith GPGPU caches. The proposed scheme employs three orthogonal techniques. First, it dynamically detects and bypasses streaming applications at fine granularity. Second, a dynamic warp throttling via cores sampling (DWT-CS) is proposed to alleviate cache thrashing. DWT-CS runs an exhaustive search over cores to find the best number of warps that achieves the highest performance. Third, it employs pseudo random interleaving cache (PRIC), which is an improved cache indexing function based on polynomialmodulusmapping, to mitigate associativity stalls and eliminate conflictmisses. Experimental results demonstrate that the proposed scheme achieves a 1.87× and a 1.5× performance improvement over the cache-consciouswavefront scheduler (CCWS) and thememory request prioritization buffer (MRPB), respectively.

Original languageEnglish (US)
Article number7744628
Pages (from-to)1740-1753
Number of pages14
JournalIEEE Transactions on Parallel and Distributed Systems
Issue number6
StatePublished - Jun 2017


  • Cache management

ASJC Scopus subject areas

  • Signal Processing
  • Hardware and Architecture
  • Computational Theory and Mathematics


Dive into the research topics of 'Sacat: Streaming-aware conflict-avoiding thrashing-resistant GPGPU cache management scheme'. Together they form a unique fingerprint.

Cite this