UVM Discard: Eliminating Redundant Memory Transfers for Accelerators

被引:3
|
作者
Zhu, Weixi [1 ]
Cox, Guilherme [2 ]
Vesely, Jan [2 ]
Hairgrove, Mark [2 ]
Cox, Alan L. [1 ]
Rixner, Scott [1 ]
机构
[1] Rice Univ, Houston, TX 77251 USA
[2] NVIDIA, Santa Clara, CA USA
来源
2022 IEEE INTERNATIONAL SYMPOSIUM ON WORKLOAD CHARACTERIZATION (IISWC 2022) | 2022年
关键词
D O I
10.1109/IISWC55918.2022.00013
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
An increasing number of applications benefit from heterogeneous hardware accelerators. Such accelerators often require the application to manually manage memory buffers on devices and transfer data between host and device buffers. A programming model that unifies the virtual address space across the host and devices is appealing because it enables automatic memory transfers and simplifies application-level programming. However, the automatic memory transfers can sometimes be redundant, which decreases performance. NVIDIA's UVM (unified virtual memory) driver provides a unified virtual address space for CPU-GPU programming. This paper identifies redundant memory transfers (RMTs) as a common performance issue with UVM. To address this issue, this paper proposes a data discard directive, and evaluates two implementations of that directive, UvmDiscard and UvmDiscardLazy. This directive exploits application-level knowledge to avoid RMTs. The implementations were integrated with NVIDIA's open-source UVM driver to demonstrate their usefulness on real-world CUDA UVM applications. For example, the use of the discard directive increases training throughput by 61.2% on a large deep learning application that oversubscribes GPU memory.
引用
收藏
页码:27 / 38
页数:12
相关论文
共 50 条
  • [1] MEMORY ACCESS COALESCING - A TECHNIQUE FOR ELIMINATING REDUNDANT MEMORY ACCESSES
    DAVIDSON, JW
    JINTURKAR, S
    SIGPLAN NOTICES, 1994, 29 (06): : 186 - 195
  • [2] Estimating and eliminating redundant data transfers over the Web: a fragment based approach
    Bouras, C
    Konidaris, A
    INTERNATIONAL JOURNAL OF COMMUNICATION SYSTEMS, 2005, 18 (02) : 119 - 142
  • [3] CacheCast: Eliminating Redundant Link Traffic for Single Source Multiple Destination Transfers
    Srebrny, Piotr
    Plagemann, Thomas
    Goebel, Vera
    Mauthe, Andreas
    2010 INTERNATIONAL CONFERENCE ON DISTRIBUTED COMPUTING SYSTEMS ICDCS 2010, 2010,
  • [4] Eliminating redundant communication of code generation for distributed memory machines
    Shen, Ya Nan
    Zhao, Rong Cai
    Wang, Lei
    SNPD 2007: EIGHTH ACIS INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, ARTIFICIAL INTELLIGENCE, NETWORKING, AND PARALLEL/DISTRIBUTED COMPUTING, VOL 2, PROCEEDINGS, 2007, : 751 - +
  • [5] SIMBER: Eliminating Redundant Memory Bound Checks via Statistical Inference
    Xue, Hongfa
    Chen, Yurong
    Yao, Fan
    Li, Yongbo
    Lan, Tian
    Venkataramani, Guru
    ICT SYSTEMS SECURITY AND PRIVACY PROTECTION, SEC 2017, 2017, 502 : 413 - 426
  • [6] The UVM virtual memory system
    Cranor, CD
    Parulkar, GM
    PROCEEDINGS OF THE 1999 USENIX ANNUAL TECHNICAL CONFERENCE, 1999, : 117 - 130
  • [7] ELIMINATING REDUNDANT RECURSIVE CALLS
    COHEN, NH
    ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 1983, 5 (03): : 265 - 299
  • [8] Eliminating redundant entries in bibliographic records
    Jin, Q
    LIBRARY COLLECTIONS ACQUISITIONS & TECHNICAL SERVICES, 2005, 29 (04) : 412 - 424
  • [9] ELIMINATING REDUNDANT MODIFICATIONS IN DICTIONARY MACHINES
    WIEDERMANN, J
    COMPUTERS AND ARTIFICIAL INTELLIGENCE, 1985, 4 (06): : 545 - 550
  • [10] Eliminating redundant clauses in SAT instances
    Fourdrinoy, Olivier
    Gregoire, Eric
    Mazure, Bertrand
    Sais, Lakhdar
    INTEGRATION OF AI AND OR TECHNIQUES IN CONSTRAINT PROGRAMMING FOR COMBINATORIAL OPTIMIZATION PROBLEMS, PROCEEDINGS, 2007, 4510 : 71 - +