Toward Efficient Interactions between Python and Native Libraries
Thu 26 Aug 2021 04:10 - 04:20 - Analysis—Programming Languages Chair(s): Ramy Shahin
Python has become a popular programming language because of its excellent programmability. Many modern software packages utilize Python for high-level algorithm design and depend on native libraries written in C/C++/Fortran for efficient computation kernels. Interaction between Python code and native libraries introduces performance losses because of the abstraction lying on the boundary of Python and native libraries. On the one side, Python code, typically run with interpretation, is disjoint from its execution behavior. On the other side, native libraries do not include program semantics to understand algorithm defects.
To understand the interaction inefficiencies, we extensively study a large collection of Python software packages and categorize them according to the root causes of inefficiencies. We extract two inefficiency patterns that are common in interaction inefficiencies. Based on these patterns, we develop PieProf, a lightweight profiler, to pinpoint interaction inefficiencies in Python applications. The principle of PieProf is to measure the inefficiencies in the native execution and associate inefficiencies with high-level Python code to provide a holistic view.
Guided by PieProf, we optimize 17 real-world applications, yielding speedups up to 6.3$\times$ on application level.
Wed 25 AugDisplayed time zone: Athens change
16:00 - 17:00 | Analysis—Programming LanguagesResearch Papers / Industry Papers +12h Chair(s): Santanu Dash University of Surrey, Michael Pradel University of Stuttgart | ||
16:00 10mPaper | Automated Code Transformation for Context Propagation in Go Industry Papers Adam Welc Uber Technologies DOI | ||
16:10 10mPaper | Toward Efficient Interactions between Python and Native Libraries Research Papers Jialiang Tan College of William & Mary, Yu Chen College of William & Mary, Zhenming Liu College of William & Mary, Bin Ren College of William & Mary, Shuaiwen Leon Song University of Sydney, Xipeng Shen North Carolina State University, Xu Liu North Carolina State University, Oak Ridge National Laboratory, USA DOI | ||
16:20 10mPaper | Accelerating JavaScript Static Analysis via Dynamic Shortcuts Research Papers DOI | ||
16:30 30mLive Q&A | Q&A (Analysis—Programming Languages) Research Papers |
Thu 26 AugDisplayed time zone: Athens change
04:00 - 05:00 | Analysis—Programming LanguagesResearch Papers / Industry Papers Chair(s): Ramy Shahin University of Toronto | ||
04:00 10mPaper | Automated Code Transformation for Context Propagation in Go Industry Papers Adam Welc Uber Technologies DOI | ||
04:10 10mPaper | Toward Efficient Interactions between Python and Native Libraries Research Papers Jialiang Tan College of William & Mary, Yu Chen College of William & Mary, Zhenming Liu College of William & Mary, Bin Ren College of William & Mary, Shuaiwen Leon Song University of Sydney, Xipeng Shen North Carolina State University, Xu Liu North Carolina State University, Oak Ridge National Laboratory, USA DOI | ||
04:20 10mPaper | Accelerating JavaScript Static Analysis via Dynamic Shortcuts Research Papers DOI | ||
04:30 30mLive Q&A | Q&A (Analysis—Programming Languages) Research Papers |