Designing GPU Data Structures for Efficient Memory Oversubscription
Vipin Patel, Srinjoy Sarkar, Swarnendu Biswas, Mainak Chaudhuri
Abstract
Efficient concurrent data structures are important building blocks for accelerating applications on GPUs. With the ever-increasing memory footprint of GPU workloads, data structures used by kernels can exceed global memory capacity. Using the unified virtual memory (UVM) model is a popular approach for kernels to oversubscribe GPU memory without the need for explicit memory management by a programmer. However, we show that data structures executing with UVM can suffer from performance degradation due to the high overheads associated with data migration and thrashing for irregular access patterns.
In this paper, we propose two-level hierarchical designs for hash table and skip list data structures that aim to maximize access locality and handle use cases where the data structure oversubscribes GPU memory. The outer-level container enables efficient jumps to desired regions of the data structure, while the inner container allows operating on the data. The inner container is sized to facilitate efficient data transfers between the CPU and the GPU. Experimental results on a diverse set of input operation sequences show that our data structure designs substantially improve performance over optimized UVM baselines while supporting high degrees of GPU memory oversubscription. Importantly, our proposed design, when used to implement key-value stores in metagenomics classification and k-mer counting applications, achieves a geomean speedup of 2.06× for hash table and 2.37× for skip list over baseline UVM implementations. CCS Concepts: • Computing methodologies → Concurrent algorithms; Massively parallel algorithms; Graphics processors; • Theory of computation → Data structures design and analysis.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext d2ccc7bd-e061-4992-82cc-58a49ab3e289Builds on11
- Batch-Aware Unified Memory Management in GPUs for Irregular WorkloadsHyojong Kim, Jaewoong Sim, Prasun Gera, Ramyad Hadidi et al.ASPLOS 2020 · 89 citations
- In-depth analyses of unified virtual memory system for GPU accelerated computingTyler N. Allen, Rong GeSC 2021 · 73 citations
- ListDB: Union of Write-Ahead Logs and Persistent SkipLists for Incremental Checkpointing on Persistent MemoryWonbae Kim, Chanyeol Park, Dongui Kim, Hyeongjun Park et al.OSDI 2022 · 47 citations
- DyCuckoo: Dynamic Hash Tables on GPUsYuchen Li, Qiwei Zhu, Zheng Lyu, Zhongdong Huang et al.ICDE 2021 · 28 citations
- Overlapping host-to-device copy and computation using hidden unified memoryJaehoon Jung, Daeyoung Park, Youngdong Do, Jungho Park et al.PPoPP 2020 · 18 citations
Related papers
- SUV: Static Analysis Guided Unified Virtual MemoryPratheek B, Guilherme Cox, Ján Veselý, Arkaprava BasuMICRO 2024 · 7 citations
- HELM: Characterizing Unified Memory Accesses to Improve GPU Performance under Memory OversubscriptionNathan Jones, Tyler N. Allen, Rong GeSC 2025 · 5 citations
- Forest: Access-aware GPU UVM ManagementMao Lin, Yuan Feng, Guilherme Cox, Hyeran JeonISCA 2025 · 9 citations
- Observability-Aided Gpu Memory OversubscriptionPratheek B, Khushit Shah, Arkaprava BasuISCA 2026
- Optimizing Random Access to Hierarchically-Compressed Data on GPUFeng Zhang, Yihua Hu, Haipeng Ding, Zhiming Yao et al.SC 2022 · 5 citations
