Pinned
New blog post: Chasing a Metaspace leak #OpenJDK #Metaspace #MemoryLeak #Instrumentation jpbempel.github.io/2023/12/01/m...
Jean-Philippe Bempel
@jpbempel.bsky.social
Sr Sw Eng @Datadoghq, optimize software running on JVM. Love performance topics and mechanical sympathy supporter. Java Champion & @javamissionctrl committer
697 followers93 following23 posts
Pinned
New blog post: Chasing a Metaspace leak #OpenJDK #Metaspace #MemoryLeak #Instrumentation jpbempel.github.io/2023/12/01/m...
Jean-Philippe Bempel reposted
Jean-Philippe Bempel reposted
🏗️ JEP 545 integrated to JDK 28 Title: Faster Startup and Warmup with ZGC Type: feature Component: hotspot / gc Release: 28 See openjdk.org/jeps/545
Jean-Philippe Bempel reposted
🏗️ JEP 546 integrated to JDK 28 Title: Adaptive Heap Sizing for ZGC Type: feature Component: hotspot / gc Release: 28 See openjdk.org/jeps/546
Jean-Philippe Bempel reposted
Remediating compromised #eMudhra certificates in #Java runtimes OpenJDK: openjdk.org/emudhra Oracle JDK: ops.java/emudhra
Jean-Philippe Bempel reposted
youtu.be/aO93VU8QZbA Simple update, Chapter split, constructors, helper functions. Codex, tokens, costs. AI success stories, optimizing Python gc, PyPy. Making a VM, hardware mismatch, memory segments, mapping pages in VM memory, self modifying code , patching jitted targets
Jean-Philippe Bempel reposted
#async-profiler 4.6 is out, and there are a few nice things. github.com/async-profil...
Jean-Philippe Bempel reposted
🎯 JEP 546 updated to target JDK 28 Title: Adaptive Heap Sizing for ZGC Type: feature Component: hotspot / gc Release: 28 See openjdk.org/jeps/546
Jean-Philippe Bempel reposted
🎯 JEP 545 updated to target JDK 28 Title: Faster Startup and Warmup with ZGC Type: feature Component: hotspot / gc Release: 28 See openjdk.org/jeps/545
Jean-Philippe Bempel reposted
🎯 JEP 543 updated to target JDK 28 Title: Structured Concurrency Type: feature Component: core Release: 28 See openjdk.org/jeps/543
Jean-Philippe Bempel reposted
Jean-Philippe Bempel reposted
JEP 544 (openjdk.org/jeps/544), the remaining part of Leyden has landed in JDK mainline. So now we can do this! This source launcher involves javac compilation, that is the bulk of the work here.
Jean-Philippe Bempel reposted
🏗️ JEP 544 integrated to JDK 28 Title: Ahead-of-Time Code Compilation Type: feature Component: hotspot / compiler Release: 28 See openjdk.org/jeps/544
Jean-Philippe Bempel reposted
#Quixotic presentation at #Devoxx, not that technical on Java but interesting nonetheless. As a reminder Quixotic runs open weight models on yourJVM Mentions #Java's incubating Vector API, some limits with matrix multiplication in Java. What GraalVM is able to do. www.youtube.com/watch?v=S7x4...
Jean-Philippe Bempel reposted
Here comes the fifth and final post about spying on AI harnesses: you will see what transcripts files bring; including the system prompts sent to the model! chrisnas.github.io/posts/2026-1...
Jean-Philippe Bempel reposted
youtu.be/yuU_usRj3JY Talk at REBASE. Peeps during parsing - less memory, faster compile. Inst sel, reg alloc, encodings. Lattice types, GCM. Anti-deps. JIT, deterministic builds & exec. Pointer orderin Simon update (non kernel platform apis). cyclic class defs
Jean-Philippe Bempel reposted
A huge increase in Java's FFM allocation performance will appear in JDK28! We've worked hard on this one. Spoiler alert: ~10x speedup on most platforms for a very common use case. inside.java/2026/10/05/c...
Jean-Philippe Bempel reposted
If you wonder how build tooling for Java can look like compared to what is out there, here's a teaser comparing to Maven, Gradle and Bazel. It all works! jenesis.build/why/tool/
Jean-Philippe Bempel reposted
JDK 27 is out, and now you can read about the performance improvements that were included in it: inside.java/2026/09/28/p...
Jean-Philippe Bempel reposted
I published a new article: the hidden trap of fixed buffers in C#. It explains a quirk of fixed buffers that could easily bite you, if you're one of the few people who still have to use that feature. minidump.net/the-hidden-t...
Jean-Philippe Bempel reposted
🎯 JEP 544 updated to target JDK 28 Title: Ahead-of-Time Code Compilation Type: feature Component: hotspot / compiler Release: 28 See openjdk.org/jeps/544
Jean-Philippe Bempel reposted
Brief weekend reading on another benchmarking pitfall: The Limitations of Running a Workload Generator In the Same JVM as the System-Under-Test norlinder.nu/posts/The-Li... Spoiler: the GC may conspire against you and your data collection!
Jean-Philippe Bempel reposted
Replying to @bricedutheil.bsky.social
It’s true Ron was inspired by my ISMM keynote: conf.researchr.org/details/ismm... But that keynote was really intended for the memory management academics in the room. Ron saw it and thought it would be useful for a wider audience to hear the same message. Great job to Ron for doing that!
Jean-Philippe Bempel reposted
If you are like me and don’t enjoy configuring JVM heap sizes (e.g. -Xms, -Xmx, -XX:SoftMaxHeapSize) then finally ”JEP 546: Adaptive Heap Sizing for ZGC” just became a candidate JEP: openjdk.org/jeps/546
Jean-Philippe Bempel reposted
Do you trade off startup and warmup by tuning -Xms, -Xmx and -XX:+AlwaysPreTouch appropriately? And did you set -XX:+UseTransparentHugePages together with the appropriate shmem_enabled kernel config? Me neither. ”JEP 545: Faster Startup and Warmup with ZGC” is candidate now: openjdk.org/jeps/545
Jean-Philippe Bempel reposted
Let's turn to Claude this week in the third episode of my long series about AI harnesses internals - chrisnas.github.io/posts/2026-0...
Jean-Philippe Bempel reposted
🎯 JEP 544 proposed to target JDK 28 Title: Ahead-of-Time Code Compilation Type: feature Component: hotspot / compiler Release: 28 See openjdk.org/jeps/544
Jean-Philippe Bempel reposted
🎓 JEP 546 moved to candidate Title: Adaptive Heap Sizing for ZGC Type: feature Component: hotspot / gc See openjdk.org/jeps/546
Jean-Philippe Bempel reposted
🎓 JEP 545 moved to candidate Title: Faster Startup and Warmup with ZGC Type: feature Component: hotspot / gc See openjdk.org/jeps/545
Aujourd'hui j'ai besoin de documents importants comme mon avis d'imposition. Je vais donc sur le site de impots.gouv.fr Impossible pendant 2/3 jours. Suis-je le seul à penser que sur d'autres types de sites un tel manque de service serait impensable?
Jean-Philippe Bempel reposted
Jean-Philippe Bempel reposted
What an incredible presentation by Oracle's Ron Pressler on memory management in Java https://www.youtube.com/watch?v=xr73mR7ii9M
Jean-Philippe Bempel reposted
Java 27 / JDK 27: General Availability: mail.openjdk.org/archives/lis... Features: openjdk.org/projects/jdk... Downloads: jdk.java.net/27/ #Java27 #JDK27 #OpenJDK #Java
Jean-Philippe Bempel reposted
🎓 JEP 544 moved to candidate Title: Ahead-of-Time Code Compilation Type: feature Component: hotspot / compiler See openjdk.org/jeps/544
Jean-Philippe Bempel reposted
This does not surprise me, even somewhat expected. Anyway, that's a good read! #virtual_threads
"Your database gets slow. Before virtual threads: clients time out, dashboard turns red, process survives. After virtual threads: 60,000 requests get in, each holding its stack on the heap, and the pod dies with OutOfMemoryError." blog.omatheusmesmo.dev/en/posts/vir...
How we improved APM Java startup by encoding a prefix trie as a JVM constant www.datadoghq.com/blog/enginee... by Stuart McCulloch
Jean-Philippe Bempel reposted
Benchmarking is hard, and there are many pitfalls out there. Let's look at some fictitious examples and think of what could have caused the behavior we are seeing: stefan-marr.de/2026/08/pitf...
Why is Arrays.fill 265 times slower on G1GC Good article from Krzysztof Ślusarski krzysztofslusarski.github.io/2026/08/19/g...
Jean-Philippe Bempel reposted
Jean-Philippe Bempel reposted
📦 JEP 534 delivered to JDK 27 Title: Compact Object Headers by Default Type: feature Component: hotspot / runtime Release: 27 See openjdk.org/jeps/534
Jean-Philippe Bempel reposted
The first part of OpenJDK’s Project Valhalla, JEP 401 (Value Objects), has been integrated into JDK 28 as a preview feature and is now available in the early-access builds. More information: openjdk.org/projects/val... #JDK28 #OpenJDK #Java
Jean-Philippe Bempel reposted
The OpenJDK team says don't pool virtual threads. We tested that advice with data, tried to fix the JVM when pooling broke, and discovered why the fix made things worse. Learn more in this blog post by Francesco Nigro. quarkus.io/blog/to-cach...
Jean-Philippe Bempel reposted
CCC for July 14, 2026. youtu.be/F6fKY9xDI7Q ChatGPT making Java libs. AST lowering. Mac binaries. Qux lang hard parts. GC. Generating executables, relocations. Qux lang variance and unions. Benchmark ports, spiral expressions, variance , clover generics. Branch opts.
Jean-Philippe Bempel reposted
CCC for Aug 7, 2026 youtu.be/wipWVo3PYAQ @JCreteUnconf JVM target for Quxlang, syntax, 3-way cmp, inline decisions, precompile. Comparison on Clover, ‘is’ binding. Visibility, private/public, Locks, ranking locks. 54 Locks in (early)JVM, striped locks. “Final” prog lang.
Jean-Philippe Bempel reposted
🎯 JEP 535 updated to target JDK 28 Title: Shenandoah GC: Generational Mode by Default Type: feature Component: hotspot / gc Release: 28 See openjdk.org/jeps/535
Jean-Philippe Bempel reposted
🏗️ JEP 539 integrated to JDK 28 Title: Strict Field Initialization in the JVM (Preview) Type: feature Release: 28 See openjdk.org/jeps/539
Jean-Philippe Bempel reposted
🏗️ JEP 401 integrated to JDK 28 Title: Value Objects (Preview) Type: feature Release: 28 See openjdk.org/jeps/401
Jean-Philippe Bempel reposted
"Connecting" tracing span to a profile with the new Async Profiler Span API krzysztofslusarski.github.io/2026/07/27/s... For what's its worth the @datadoghq.com continous profiler already had for quite some time docs.datadoghq.com/profiler/#co... #async-profiler #opentelemetry #profiling #tracing
Jean-Philippe Bempel reposted
🎯 JEP 401 updated to target JDK 28 Title: Value Objects (Preview) Type: feature Release: 28 See openjdk.org/jeps/401
Jean-Philippe Bempel reposted
🎯 JEP 539 updated to target JDK 28 Title: Strict Field Initialization in the JVM (Preview) Type: feature Release: 28 See openjdk.org/jeps/539
Jean-Philippe Bempel reposted
Summer is a good time to revisit the old VMMap 2007 sample from Windows via C/C++ book. I've explained the Windows implementation improvements and the Linux port to this new blog post and the source code is available in github.com/chrisnas/ASMap. chrisnas.github.io/posts/2026-0... Happy reading!