HotSpot JVM Performance Tuning Guidelines
HotSpot JVM Performance Tuning Guidelines Content Intro Memory Heap Off-Heap Metaspace CodeCache Direct Buffers ClassLoader Dynamic Class-Data Sharing Just-In-Time Compiler Tiered Mode: C1+C2 Graal JIT Threads Garbage Collectors Serial Garbage…
The inner workings of technical conferences
Introduction In this blog post, David Leitner and I want to give you an insight, based on our experience from the past years of speaking at international conferences (e.g. more…
JVM Garbage Collectors Benchmarks Report 19.12
Context The current article describes a series of Java Virtual Machine (JVM) Garbage Collectors (GC) micro-benchmarks and their results, using a different set of patterns. For the current issue, I…
When do we need an architect
Key takeaways the methodology, whatever that is (e.g. SCRUM, SAFE, etc) should not impose the necessity of having an architect in the team, but rather the real project needs. in…
Logging patterns and their performance impact
Motivation In the current post, I would like to explore different logging patterns and to identify which one is more efficient in terms of performance. Since logging is spread across…
JVM JIT Compilers Benchmarks Report 19.11
Context and Motivation The current article describes a series of Java Virtual Machine (JVM) Just In Time (JIT) Compilers micro-benchmarks and their results, relying on different optimization patterns or intrinsics…
The Agile Manifesto: A Software Architect’s Perspective
According to the licensing policy, I would like to mention this article was originally published on InfoQ. Key Takeaways While the role and responsibilities of a software architect can be…
JVM JIT Compilers Benchmarks Report 19.04
Context and Motivation The current article describes a series of Java Virtual Machine (JVM) Just In Time (JIT) Compilers benchmarks and their results, relying on different optimization patterns. For the…
Kotlin explicit inlining at megamorphic call-sites pays off in performance
Motivation In the current post, I would like to investigate how megamorphic call-sites are optimized in Kotlin as a result of explicit inlining (using the explicit inline modifier) and what…
Chaining lambda optimizations in HotSpot VM and GraalVM
Motivation Current post tackles the problem of chaining (or linking) multiple lambda calls which seem to be differently optimized by the HotSpot Just In Time Compiler C2 (i.e. JIT C2)…