Community
Search Options
Search Options
Log in
Skip to main content (Press Enter).
Sign in
Skip auxiliary navigation (Press Enter).
Application Runtimes
Topic groups
DevOps Automation
devops.automation CAB
Expertise Connect(EC) Group
Global Application Runtimes
Java, Semeru Runtimes and Runtimes for Business
WebSphere & Liberty CAB
WebSphere Application Server & Liberty
User groups
Events
TechXchange Day
IBM TechXchange Conference
Upcoming Application Runtimes Events
IBM TechXchange Webinars
All IBM TechXchange Community Events
Participate
Gamification Program
Getting Started
Community Manager's Welcome
Post to Forum
Share a Resource
Share Your Expertise
Blogging on the IBM TechXchange Community
Connect with Application Runtimes Users
All IBM TechXchange Community Users
Resources
IBM TechXchange Group
IBM Champions
IBM Cloud Support
IBM Documentation
IBM Support
IBM Support 101
IBM Technology Zone
IBM Training
Cloud Integration Expert Labs & Learning Community
Meet the Application Runtimes Team
Maximize Websphere
TechXchange Day
Marketplace
Marketplace
IBM Application Runtimes Community
Come for answers, stay for best practices. All we're missing is you.
Ask a question
Join us for IBM TechXchange Day: AI and Automation
Skip main navigation (Press Enter).
Toggle navigation
Search Options
Meet Your Application Runtimes Community Managers
WebSphere Application Server & Liberty
View Only
Group Home
Discussion
9.6K
Library
594
Blogs
638
Events
3
Members
9.9K
Share
IBM Expert TV: Tune Java Garbage Collection to improve performance
By
Kevin Grigorenko
posted
Thu April 14, 2022 10:44 AM
1
Like
On Wednesday, April 13th, 2022 at 11:00 AM ET, we presented "Tune Java Garbage Collection to improve performance" on IBM Expert TV.
Replay:
https://ibm.biz/BdPBhT
Presentation:
https://ibm.biz/BdPdEJ
Speakers: Kevin Grigorenko, Gary DeVal
In the presentation, we discussed key aspects of garbage collection tuning to improve performance. We started by explaining that garbage collection (GC) is a critical component of Java performance which generally cannot be disabled, so it must be tuned. It's important to be data driven and the key data for tuning GC is verbose GC. This generally has an overhead of less than ~0.2% and is recommended for all environments. Next, use the free
IBM Garbage Collection and Memory Visualizer
tool to load the verbosegc files and review the proportion of time spent in garbage collection. A healthy proportion is generally less than 5-10%. If you observe a greater proportion, then consider various strategies for tuning:
Consider testing different garbage collectors themselves; on IBM Java and Semeru/OpenJ9, those include gencon (default), balanced, optthruput, optavgpause, and metronome.
The maximum heap size is tuned with -Xmx or -XX:MaxRAMPercentage
If used tenured heap > ~70% after global GCs, test increasing max heap size
The maximum nursery size is tuned with -Xmn (defaults to 25% of -Xmx)
If used tenured heap < ~40% after global GCs, test increasing max nursery size
Check for long GC pauses - find/fix cause
Eliminate system GCs
Reduce class loading/unloading churn
Make sure Java process size fits in RAM; paging has massive performance impact
Gencon: If you're willing to trade throughput/CPU for reduced nursery pause times, test -Xgc:concurrentScavenge
#experttv
#Java
#java-performance
#performance
#websphere
#WebSphereApplicationServer(WAS)
#WebSphereLiberty
#WebSphere-performance
0 comments
28 views
Permalink
IBM Community Home
Browse
Discussions
Resources
Groups
Events
IBM TechXchange Conference 2023
IBM Community Webinars
All IBM Community Events
Participate
Gamification Program
Community Manager's Welcome
Post to Forum
Share a Resource
Blogging on the Community
All IBM Community Users
Resources
Community Front Porch
IBM Champions
IBM Cloud Support
IBM Documentation
IBM Support
IBM Technology Zone
IBM Training
Marketplace
Marketplace
Application Runtimes
Topic groups
DevOps Automation
devops.automation CAB
Expertise Connect(EC) Group
Global Application Runtimes
Java, Semeru Runtimes and Runtimes for Business
WebSphere & Liberty CAB
WebSphere Application Server & Liberty
User groups
Events
TechXchange Day
IBM TechXchange Conference
Upcoming Application Runtimes Events
IBM TechXchange Webinars
All IBM TechXchange Community Events
Participate
Gamification Program
Getting Started
Community Manager's Welcome
Post to Forum
Share a Resource
Share Your Expertise
Blogging on the IBM TechXchange Community
Connect with Application Runtimes Users
All IBM TechXchange Community Users
Resources
IBM TechXchange Group
IBM Champions
IBM Cloud Support
IBM Documentation
IBM Support
IBM Support 101
IBM Technology Zone
IBM Training
Cloud Integration Expert Labs & Learning Community
Meet the Application Runtimes Team
Maximize Websphere
TechXchange Day
Marketplace
Marketplace
Powered by Higher Logic