Why Aren’t More Users More Happy With Our VMs?

Programming language Virtual Machines (VM)s are now widely used, from server applications to web browsers. Published benchmarks regularly show that VMs can optimise programs to the same degree as, and often substantially better than, traditional static compilers. Yet, there are still people who are unhappy with the VMs they use. Frequently their programs don’t run anywhere near as fast as benchmarks suggest; sometimes their programs even run slower than more naive language implementations. Often our reaction is to tell such users that their programs are “wrong” and that they should fix them.

This talk takes a detailed look at VM performance, based on a lengthy experiment and a new statistical technique for analysing warmup time: we not only uncovered unexpected patterns of behaviour, but found that VMs perform poorly far more often than previously thought. I will draw on some of my own experiences to suggest how we may have gotten into such a pickle. Finally, I will offer some suggestions as to how we might be able to make more VM users more happy in the future.

Speaker Details

Laurence Tratt is a Reader in Software Development at King’s College London, where he leads the Software Development Team. His past work includes VM implementation techniques (e.g. “storage strategies”) and language composition (e.g. “PyHyp”, the first composition of two real-world languages).

More at http://tratt.net/laurie/ (opens in new tab)

Date:
Speakers:
Reader Laurence Tratt
Affiliation:
King's College London

Series: Microsoft Research Talks