Remix: Online Detection and Repair of Cache Contention for the JVM
As ever more computation shifts onto multicore architectures, it is increasingly critical to find effective ways of dealing with multithreaded performance bugs like true and false sharing. Previous approaches to fixing false sharing in unmanaged languages have had to resort to highly-invasive runtime program modification. We observe that managed language runtimes, with garbage collection and JIT code compilation, present unique opportunities to repair such bugs directly, mirroring the techniques used in manual repairs.
We present Remix, a modified version of the Oracle HotSpot JVM which can detect cache contention bugs and repair false sharing at runtime. Remix’s detection mechanism leverages recent performance counter improvements on Intel platforms, which allow for precise, unobtrusive monitoring of cache contention at the hardware level. Remix can detect and repair known false sharing issues in the LMAX Disruptor high-performance inter-thread messaging library and the Spring Reactor event-processing framework, automatically providing 1.5-2x speedups over unoptimized code and matching the performance of hand-optimization. Remix also finds a new false sharing bug in SPECjvm2008, and uncovers a true sharing bug in the HotSpot JVM that, when fixed, improves the performance of three NAS Parallel Benchmarks by 7-25x. Remix incurs no statistically-significant performance overhead on other benchmarks that do not exhibit cache contention, making Remix practical for always-on use.
Thu 16 JunDisplayed time zone: Tijuana, Baja California change
10:30 - 12:00
Down to the Metal IIResearch Papers at Grand Ballroom Santa Ynez
Chair(s): Hans-J. Boehm Google
|Stratified Synthesis: Automatically Learning the x86-64 Instruction Set|
Stefan Heule Stanford University, Eric Schkufza VMware Research Group, Rahul Sharma Stanford University, Alex Aiken Stanford UniversityDOI Pre-print Media Attached
|Remix: Online Detection and Repair of Cache Contention for the JVM|
Ariel Eizenberg University of Pennsylvania, Shiliang Hu Intel Corporation, Gilles Pokam Intel Corporation, Joseph Devietti University of PennsylvaniaMedia Attached
|Statistical Similarity of Binaries|
Yaniv David Technion, Nimrod Partush Technion, Eran Yahav TechnionMedia Attached