Tue 6 Nov 2018 14:30 - 15:00 at Stuart - Speakers 1 Chair(s): Daryl Maier

In this presentation an optimization technique for object-oriented language runtimes is discussed. The technique takes advantage of infrequently accessed objects, called cold objects, and involves segregating objects into different memory areas by co-locating cold objects in slower memory during garbage collection. This technique is compared against operating system paging mechanisms with swap partitions. Two different schemes for determining which objects should be segregated into slower memory are tested and their results are analyzed. The first scheme uses the slower memory as additional memory, without consideration of access frequency. The second approximates access frequency by marking operating system pages accessed between garbage collections. The OpenJ9 Java virtual machine is modified to support this solution. A new access frequency-aware throughput benchmark, the CloudGC benchmark and the DaCapo benchmark suite are used to compare the different configurations. It is discovered that each technique can be the most or least optimal choice depending on the benchmark tested. Future improvements in the field are suggested given the results of this work.

Scott Young

Scott is a Master’s student at the University of New Brunswick working with IBM on language runtime research.

Tue 6 Nov

Displayed time zone: Guadalajara, Mexico City, Monterrey change