Write a Blog >>
SPLASH 2019
Sun 20 - Fri 25 October 2019 Athens, Greece
Tue 22 Oct 2019 11:00 - 11:30 at Room 3A - Session #2

One form of type checking used in gradually typed language is transient type checking: whenever an object `flows’ through code with a type annotation, the object is dynamically checked to ensure it has the methods required by the annotation.

Although naive implementations of transient type checks have a high runtime overhead, just-in-time compilation and optimisation in virtual machines can eliminate much of this overhead. Unfortunately the improvement is not uniform: while most type checks can be optimised away, some will significantly decrease a program’s performance, and some may even increase it.

In this paper, we refine the so called ``Takikawa'' protocol, and use it to identify which type annotations have the greatest effects on performance. In particular, we show how graphing the performance of such benchmarks when varying which type annotations are present in the source code can be used to discern potential patterns in performance. We demonstrate our approach by testing the Moth virtual machine: for many of the benchmarks where Moth’s transient type checking impacts performance, we have been able to identify one or two specific type annotations that are the likely cause. Without these type annotations, the performance impact of transient type checking becomes negligible.

Using our technique programmers can optimise programs by removing expensive type checks, and VM engineers can identify new opportunities for compiler optimisation.

This program is tentative and subject to change.

Tue 22 Oct

vmil-2019-papers
11:00 - 12:30: VMIL 2019 - Session #2 at Room 3A
vmil-2019-papers11:00 - 11:30
Full-paper
Isaac Oscar GarianoVictoria University of Wellington, Richard RobertsVictoria University of Wellington, Stefan MarrUniversity of Kent, Michael HomerVictoria University of Wellington, James NobleVictoria University of Wellington
vmil-2019-papers11:30 - 12:00
Full-paper
Rohan PadhyeUniversity of California, Berkeley, Koushik SenUniversity of California, Berkeley
vmil-2019-papers12:00 - 12:15
Talk
Kiko Fernandez-ReyesUppsala University, Isaac Oscar GarianoVictoria University of Wellington, James NobleVictoria University of Wellington, Tobias WrigstadUppsala University
vmil-2019-papers12:15 - 12:30
Talk