Performance tuning is an integral part of application behavior with JVMs. Many methods and techniques exist, which all involve trade-offs that aim to balance requirements for throughput, space, responsiveness and available memory across a range of scale levels.
Characteristic of the majority of performance tuning option is the need for extended pauses in the application which result from the requirement to compact the heap to free up space. This is one of the key drawbacks. A variety of strategies are used to delay these events, but compaction cannot be avoided with all collectors that are commercially available except Azul C4, which is able to avoid pauses altogether.
Java developers can improve application performance, scalability and reliability and make more informed choices about performance tuning options by developing an in-depth understanding of the garbage collection process, which can greatly increase application performance.
For more information about performance tuning and garbage collection options, download this white paper.