BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage GarbageCollection Content on InfoQ

Articles

RSS Feed
  • Understanding Classic Java Garbage Collection

    Java Garbage Collection remains a topic of major interest even after 25 years. Many developers are still confused about the fundamentals of the topic, even of the most widely-used implementation (Parallel on Java 8).

  • Book Review: Optimizing Java

    InfoQ reviewed the book Optimizing Java, a comprehensive in-depth look at performance tuning in the Java programming language written by Java industry experts, Ben Evans, James Gough and Chris Newland. InfoQ spoke to the authors for more insights on their experiences, learnings and obstacles in authoring this book.

  • Want to Know What’s in a GC Pause? Go Look at the GC Log!

    Sometimes a superficial analysis of our application performance can incorrectly have the Garbage Collector point to itself. A proper GC log analysis can lead us past the “blame the collector” game. When this happens, we can make amazing discoveries that improve the performance and stability of our applications.

  • Invokedynamic - Java’s Secret Weapon

    invokedynamic was the first new Java bytecode since Java 1.0 and was crucial in implementing the "headline" features of Java 8 (such as lambdas and default methods). In this article, we take a deep dive into invokedynamic and explain why it is such a powerful tool for the Java platform and for JVM languages such as JRuby and Nashorn.

  • Case for Defaulting to G1 Garbage Collector in Java 9

    In this article, GC expert Monica Beckwith makes the case for JEP 248, the proposal to make G1 the default garbage collector in OpenJDK 9.

  • Where Has the Java PermGen Gone?

    Prior to JDK8 class metadata and constants would live in an area called the “permanent generation”, contiguous with the Java heap. One problem was that If the class metadata size is beyond the allocated bounds your app would run out of memory. With the advent of JDK8 we no longer have PermGen. The space where it was held has now moved to native memory to an area known as the “Metaspace”.

  • Book Review and Interview: Real World OCaml

    The new book Real World OCaml provides a deep dive into the OCaml programming language. InfoQ caught up with the authors to hear about real world Ocaml users, its unique features, and much more.

  • Visualizing Java Garbage Collection

    Garbage Collection, like Backgammon takes minutes to learn and a lifetime to master. In this article Master trainer/consultant Ben Evans summarizes his recent InfoQ presentation "Visualizing Garbage Collection" where he discusses Garbage Collection from the ground up.

  • Tips for Tuning the Garbage First Garbage Collector

    In July Monica Beckwith explored the theory of the new G1 GC Garbage First Garbage Collector. In this second installment, Monica delves into more practical aspects and provides guidance for tuning.

  • G1: One Garbage Collector To Rule Them All

    Many articles describe how a poorly tuned garbage collector can bring an application's SLA commitments to its knees. Oracle's new G1 Collector in HotSpot moves away from the conventional GC model, where a Java heap splits into (contiguous) young and old generations, and instead introduces the concept of “regions”, for a generally more performant and manageable GC.

  • Java Garbage Collection Distilled

    CMS, G1, Young Gen, New Gen, Old Gen, Eden, and the hundreds of JVM start-up flags... does this all baffle you when trying to tune the garbage collector to get the required throughput and latency from your Java application? Don’t worry, you are not alone. This article will attempt to explain the tradeoffs when choosing and tuning garbage collection algorithms for a particular workload.

  • The Azul Garbage Collector

    Azul's recently announced Zing product brings their Garbage Collector, which achieves both pauseless garbage collection and a high tolerance to the factors which typically impact collection and application responsiveness, to Java programs running on Intel and AMD based servers. This article takes a detailed look at how Azul has been able to achieve these design goals.

BT