Long-running, heavily multi-threaded, Java server applications make stringent demands of garbage collector (GC) performance. Synchronisation of all application threads before garbage collection is a significant bottleneck for JVMs that use native threads. We present a new static analysis and a novel GC framework designed to address this issue by allowing independent collection of thread-local heaps. In contrast to previous work, our solution safely classifies objects even in the presence of dynamic class loading, requires neither write-barriers that may do unbounded work, nor synchronisation, nor locks during thread-local collections; our analysis is sufficiently fast to permit its integration into a high-performance, production-quality vir...
Multithreaded applications with multi-gigabyte heaps running on modern servers provide new challenge...
In conjunction with the 23rd ACM Symposium on Operating Systems Principles (SOSP 2011)International ...
Java programs are deployed in a bytecode format that is executed by a Java virtual machine (JVM). J...
Java is an increasingly common platform for server-side applications. Such applications are usually ...
ABSTRACT The mostly concurrent garbage collection was presented in the seminal paper of Boehm et al....
With multi-processor systems in widespread use, and programmers increasingly writing programs that e...
In systems that support garbage collection, a tension exists between collecting garbage too fre-quen...
Much prior work has shown that the performance enabled by garbage collection (GC) systems is highly ...
The Java Virtual Machine (JVM) executes the compiled bytecode version of a Java program and acts as ...
While a conventional program uses exactly as much memory as it needs, the memory use of a garbage-co...
An important issue for concurrent garbage collection in virtual machines (VM) is to identify which g...
Garbage collection (GC) is an indispensable technology in managed runtime systems (e.g. Java VM). Th...
This paper provides a brief overview of both garbage collection (GC) of memory and parallel processi...
While hardware is evolving toward heterogeneous multicore architectures, modern software application...
With the current developments in CPU implementations, it be-comes obvious that ever more parallel mu...
Multithreaded applications with multi-gigabyte heaps running on modern servers provide new challenge...
In conjunction with the 23rd ACM Symposium on Operating Systems Principles (SOSP 2011)International ...
Java programs are deployed in a bytecode format that is executed by a Java virtual machine (JVM). J...
Java is an increasingly common platform for server-side applications. Such applications are usually ...
ABSTRACT The mostly concurrent garbage collection was presented in the seminal paper of Boehm et al....
With multi-processor systems in widespread use, and programmers increasingly writing programs that e...
In systems that support garbage collection, a tension exists between collecting garbage too fre-quen...
Much prior work has shown that the performance enabled by garbage collection (GC) systems is highly ...
The Java Virtual Machine (JVM) executes the compiled bytecode version of a Java program and acts as ...
While a conventional program uses exactly as much memory as it needs, the memory use of a garbage-co...
An important issue for concurrent garbage collection in virtual machines (VM) is to identify which g...
Garbage collection (GC) is an indispensable technology in managed runtime systems (e.g. Java VM). Th...
This paper provides a brief overview of both garbage collection (GC) of memory and parallel processi...
While hardware is evolving toward heterogeneous multicore architectures, modern software application...
With the current developments in CPU implementations, it be-comes obvious that ever more parallel mu...
Multithreaded applications with multi-gigabyte heaps running on modern servers provide new challenge...
In conjunction with the 23rd ACM Symposium on Operating Systems Principles (SOSP 2011)International ...
Java programs are deployed in a bytecode format that is executed by a Java virtual machine (JVM). J...