Write a Blog >>
ECOOP 2021
Sun 11 - Sat 17 July 2021 Online
co-located with ECOOP and ISSTA 2021
Fri 16 Jul 2021 02:20 - 02:40 at ECOOP 1 - Program Analysis / Runtimes (time band 2) Chair(s): Werner Dietl
Fri 16 Jul 2021 19:00 - 19:20 at ECOOP 2 - Parallelism / Runtimes (time band 1) Chair(s): Colin Gordon

This paper focuses on an important optimization opportunity in Python-hosted domain-specific languages (DSLs): the use of laziness for optimization, whereby multiple API calls are deferred and then optimized prior to execution (rather than executing eagerly, which would require executing each call in isolation). In existing supports of lazy evaluation, laziness is “terminated” as soon as control passes back to the host language in any way, limiting opportunities for optimization. This paper presents Cunctator, a framework that extends this laziness to more of the Python language, allowing intermediate values from DSLs like NumPy or Pandas to flow back to the host Python code without triggering evaluation. This exposes more opportunities for optimization and, more generally, allows for larger computation graphs to be built, producing 1.03-14.2X speedups on a set of programs in common libraries and frameworks.

Fri 16 Jul

Displayed time zone: Brussels, Copenhagen, Madrid, Paris change

02:00 - 03:20
Program Analysis / Runtimes (time band 2)ECOOP Technical Papers at ECOOP 1
Chair(s): Werner Dietl University of Waterloo
02:00
20m
Talk
Gradual Program Analysis for Null Pointers
ECOOP Technical Papers
Sam Estep Carnegie Mellon University, Jenna DiVincenzo (Wise) Carnegie Mellon University, Jonathan Aldrich Carnegie Mellon University, Éric Tanter University of Chile, Johannes Bader Jane Street, Joshua Sunshine Carnegie Mellon University
DOI Pre-print Media Attached File Attached
02:20
20m
Talk
Best-Effort Lazy Evaluation for Python Software Built On APIs
ECOOP Technical Papers
Guoqiang Zhang North Carolina State University, Xipeng Shen North Carolina State University
DOI
02:40
20m
Talk
Lifted Static Analysis of Dynamic Program Families by Abstract Interpretation
ECOOP Technical Papers
Aleksandar S. Dimovski Mother Teresa University, Skopje, Sven Apel Saarland University
DOI
03:00
20m
Talk
Accelerating Object-Sensitive Pointer Analysis by Exploiting Object Containment and Reachability
ECOOP Technical Papers
Dongjie He University of New South Wales, Jingbo Lu UNSW Sydney, Yaoqing Gao Huawei Canada, Jingling Xue UNSW
DOI Pre-print
19:00 - 20:00
Parallelism / Runtimes (time band 1)ECOOP Technical Papers at ECOOP 2
Chair(s): Colin Gordon Drexel University
19:00
20m
Talk
Best-Effort Lazy Evaluation for Python Software Built On APIs
ECOOP Technical Papers
Guoqiang Zhang North Carolina State University, Xipeng Shen North Carolina State University
DOI
19:20
20m
Talk
Linear Promises: Towards Safer Concurrent Programming
ECOOP Technical Papers
Ohad Rau Georgia Institute of Technology, Caleb Voss Georgia Institute of Technology, Vivek Sarkar Georgia Institute of Technology
DOI
19:40
20m
Talk
Enabling Additional Parallelism in Asynchronous JavaScript Applications
ECOOP Technical Papers
Ellen Arteca Northeastern University, Frank Tip Northeastern University, Max Schaefer GitHub, Inc.
DOI