Many opportunities for easy, big-win, program optimizations are missed by compilers. This is especially true in highly layered Java applications. Often at the heart of these missed optimization op-portunities lie computations that, with great expense, produce data values that have little impact on the program’s final output. Con-structing a new date formatter to format every date, or populating a large set full of expensively constructed structures only to check its size: these involve costs that are out of line with the benefits gained. This disparity between the formation costs and accrued benefits of data structures is at the heart of much runtime bloat. We introduce a run-time analysis to discover these low-utility data structures. The ...
A (build) target specifies the information that is needed to automatically build a software artifact...
Many modern applications (e.g. web applications) are composed of a relatively small amount of applic...
For many years, programmers have faced the problem of reading and trying to understand other program...
Abstract. We present a set of techniques for reducing the memory consumption of object-oriented prog...
We present a set of techniques for reducing the memory consumption of object-oriented programs. Thes...
Dynamic class loading is an integral part of the Java programming language, offering a number advant...
The memory hierarchy in modern architectures continues to be a major performance bottleneck. Many ex...
The memory hierarchy in modern architectures continues to be a major performance bottleneck. Many ex...
Java programs are deployed in a bytecode format that is executed by a Java virtual machine (JVM). J...
International audienceMicrobenchmarking consists of evaluating, in isolation, the performance of sma...
In the context of an object-oriented programming language such as Java, the ubiquitous use of instan...
Abstract—Many applications suffer from run-time bloat: excessive memory usage and work to accomplish...
htmlabstractThe hash trie data structure is a common part in standard collection libraries of JVM pr...
Abstract. Model checking techniques have proven effective for checking a num-ber of non-trivial conc...
Understanding and analyzing multi-threaded program performance and scalability is far from trivial, ...
A (build) target specifies the information that is needed to automatically build a software artifact...
Many modern applications (e.g. web applications) are composed of a relatively small amount of applic...
For many years, programmers have faced the problem of reading and trying to understand other program...
Abstract. We present a set of techniques for reducing the memory consumption of object-oriented prog...
We present a set of techniques for reducing the memory consumption of object-oriented programs. Thes...
Dynamic class loading is an integral part of the Java programming language, offering a number advant...
The memory hierarchy in modern architectures continues to be a major performance bottleneck. Many ex...
The memory hierarchy in modern architectures continues to be a major performance bottleneck. Many ex...
Java programs are deployed in a bytecode format that is executed by a Java virtual machine (JVM). J...
International audienceMicrobenchmarking consists of evaluating, in isolation, the performance of sma...
In the context of an object-oriented programming language such as Java, the ubiquitous use of instan...
Abstract—Many applications suffer from run-time bloat: excessive memory usage and work to accomplish...
htmlabstractThe hash trie data structure is a common part in standard collection libraries of JVM pr...
Abstract. Model checking techniques have proven effective for checking a num-ber of non-trivial conc...
Understanding and analyzing multi-threaded program performance and scalability is far from trivial, ...
A (build) target specifies the information that is needed to automatically build a software artifact...
Many modern applications (e.g. web applications) are composed of a relatively small amount of applic...
For many years, programmers have faced the problem of reading and trying to understand other program...