Home » Tag Archives: GC

Tag Archives: GC

Improve Application Performance with These Advanced GC Techniques

Application performance is on the forefront of our minds, and Garbage Collection optimization is a good place to make small, but meaningful advancements Automated garbage collection (along with the JIT HotSpot Compiler) is one of the most advanced and most valued components of the JVM, but many developers and engineers are far less familiar with Garbage Collection (GC), how it ...

Read More »

Reduce GC Overhead With These 5 Simple Hacks

Five simple ways to write code that’s more memory efficient, without spending more time on it or reducing code readability How much overhead does garbage collection add to your application? You might not know the exact number off the top of your head, but you do know that there’s always room for improvement. Although automated GC is a mostly efficient ...

Read More »

GC Explained: Heap

Generational Garbage Collectors JVM heap is divided into two different Generations. One is called Young and the second one is the Old (sometimes referred to as Tenured). The Young Generation is further separated into two main logical sections: Eden and Survivor spaces. There are also Virtual spaces for both Young and the Old Generations which are used by Garbage Collectors ...

Read More »

Java Garbage Collectors: When Will G1GC Force CMS Out?

In JEPs proposed to target JDK 9 (2017/4/4), Mark Reinhold has written that JEP 291 (“Deprecate the Concurrent Mark Sweep (CMS) Garbage Collector”) is one of two JEPs that “have been placed into the ‘Proposed to Target’ state by their owners after discussion and review”. If things go well for JEP 291, it will be targeted for JDK 9. Reinhold ...

Read More »

How Java’s Built-In Garbage Collection Will Make Your Life Better (Most of the Time)

Discover faster, more efficient performance monitoring with an enterprise APM product learning from your apps. Take the AppDynamics APM Guided Tour! “No provision need be made for the user to program the return of registers to the free-storage list.” This line (along with the dozen or so that followed it) is buried in the middle of John McCarthy’s landmark paper, ...

Read More »

Generational disparity in garbage collection

For the last year, I have been helping the startup Instana to create a Java agent that traces executions within a Java application. This execution data is collected and jointed to generate traces of user requests as well as the resulting communication between services within the system owner’s hemisphere. This way, unstructured communication can be visualized what significantly simplifies the ...

Read More »

APM for the Non-Java Guru: What leak?

Solve App Problems 10x Faster with AppDynamics – Monitor production apps at code-level depth with minimal overhead. Start a FREE Trial! Memory, Memory, Memory… Memory is a critical part of Java, in particular, the management of memory. As a developer, memory management is not something you want to be doing on a regular basis, nor is it something you want ...

Read More »

Running -XX:CompileCommand on Windows

The HotSpot JVM provides several command-line arguments related to Just In Time (JIT) compilation. In this post, I look at the steps needed to start applying the command-line flag -XX:CompileCommand to see the just-in-time compilation being performed on individual methods. JIT Overview Nikita Salnikov-Tarnovski’s blog post Do you get Just-in-time compilation? provides a nice overview of the JIT compiler and ...

Read More »

Elastic infrastructure in practice

A couple of weeks ago I got a rare opportunity to get my hands dirty in the infrastructure field. Being an interesting change to my day-to-day hours deep under the hood of the JVM internals, I thought to share the motivation and results with you. Hopefully it serves as an inspiration to similar problem categories out there. Background I will ...

Read More »