DRPY: Pinpointing Inefficient Memory Usage in Multi-Layer Python']Python Applications

被引:0
|
作者
Cui, Jinku [1 ]
Zhao, Qidong [1 ]
Hao, Yueming [1 ]
Liu, Xu [1 ]
机构
[1] North Carolina State Univ, Raleigh, NC 27695 USA
关键词
D O I
暂无
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Python has become an increasingly popular programming language, especially in the areas of data analytics and machine learning. Many modern Python packages employ a multi-layer design: the Python layer manages various packages and expresses high-level algorithms; the native layer is written in C/C++/Fortran/CUDA for efficient computation. Typically, each layer manages its own computation and memory and exposes APIs for cross-layer interactions. Without holistic optimization, performance inefficiencies can exist at the boundary between layers. In this paper, we develop DRPY, a novel profiler that pinpoints such memory inefficiencies across layers in Python applications. Unlike existing tools, DRPY takes a hybrid and fine-grained approach to track memory objects and their usage in both Python and native layers. DRPY correlates the behavior of memory objects across layers and builds an object flow graph to pinpoint memory inefficiencies. In addition, DRPY captures rich information associated with object flow graphs, such as call paths and source code attribution to guide intuitive code optimization. Guided by DRPY, we are able to optimize many Python applications with non-trivial performance improvement. Many optimization patches have been validated by application developers and committed to application repositories.
引用
收藏
页码:245 / 257
页数:13
相关论文
共 50 条
  • [21] Multi-layer microfluidic glass chips for microanalytical applications
    Antoine Daridon
    Valia Fascio
    Jan Lichtenberg
    Rolf Wütrich
    Hans Langen
    Elisabeth Verpoorte
    Nico F. de Rooij
    Fresenius' Journal of Analytical Chemistry, 2001, 371 : 261 - 269
  • [22] Multi-layer microfluidic glass chips for microanalytical applications
    Daridon, A
    Fascio, V
    Lichtenberg, J
    Wütrich, R
    Langen, H
    Verpoorte, E
    de Rooij, NF
    FRESENIUS JOURNAL OF ANALYTICAL CHEMISTRY, 2001, 371 (02): : 261 - 269
  • [24] Static Level Measurement Equipment for multi-layer Applications
    不详
    ATP EDITION, 2008, (11): : 18 - 18
  • [25] Multi-layer microcapsules: fresh insights and new applications
    Timin, Alexander S.
    Gould, David J.
    Sukhorukov, Gleb B.
    EXPERT OPINION ON DRUG DELIVERY, 2017, 14 (05) : 583 - 587
  • [26] A figure of merit for Flash memory multi-layer tunnel dielectrics
    Govoreanu, B
    Blomme, P
    Rosmeulen, M
    Van Houdt, J
    De Meyer, K
    SIMULATION OF SEMICONDUCTOR PROCESSES AND DEVICES 2001, 2001, : 270 - 273
  • [27] Multi-Layer Nanoelectromechanical (NEM) Memory Switches for Multi-Path Routing
    Yoon, Jisoo
    Kwon, Hyug Su
    Choi, Woo Young
    IEEE ELECTRON DEVICE LETTERS, 2022, 43 (01) : 162 - 165
  • [28] Multi-layer cylindrical dielectric resonator antenna for wideband applications
    Huang, Wei
    Kishk, Ahmed A.
    2006 7TH INTERNATIONAL SYMPOSIUM ON ANTENNAS, PROPAGATION AND EM THEORY, VOLS 1 AND 2, PROCEEDINGS, 2006, : 277 - 280
  • [29] Novel Static Multi-Layer Forest Approach and Its Applications
    Bhagwat, Ganesh
    Kumari, Shristi
    Patekar, Vaishnavi
    Deaconu, Adrian Marius
    MATHEMATICS, 2021, 9 (21)
  • [30] Multi-layer thermal models of PV modules for monitoring applications
    Tina, Giuseppe M.
    Marletta, Giuseppe
    Sardella, Salvatore
    2012 38TH IEEE PHOTOVOLTAIC SPECIALISTS CONFERENCE (PVSC), 2012, : 2947 - 2952