Skip to the content.

AI usage in my articles and verbosity

All articles that I publish are self-crafted, but I use AI to make the articles better. The four main areas are:

All of this is done to compensate for my language gaps. I genuinely think that AI English is better than mine. I don’t use AI to make articles longer. I always assume that readers of this blog are not only low-level geeks, but also high-level Java developers, who may not know low-level stuff. That’s the reason for the verbosity of my articles.

Since 2026, in the majority of my investigations I use AI as a tool to speed them up. If something useful is generated by AI during such an analysis, I can also paste it into the article. For example, the table with the ASM -> pseudocode translation from this article was AI-generated. Since 2026.09 I will try to be more transparent about AI usage in each article, probably with a chapter at the end.

Manuals

Async-profiler - manual by use cases

My articles about JVM performance and tuning

[2026.09] JDK 26 and SIMD operations

[2026.08] Why is Arrays.fill 265 times slower on G1GC?

[2026.07] Async-profiler + OpenTelemetry spans

[2025.04] Java/JVM native memory leaks

[2022.11] Finding heap memory leaks with Async-profiler

[2022.08] Performance tuning of Hazelcast SQL engine

[2022.04] Tracing a Single Operation in Distributed Systems

[2022.03] Everybody lies, profilers too

[2022.03] JVM thread state changes by example

[2021.08] Continuous profiling with async-profiler - long time to safepoint - logs vs swap

[2021.08] Continuous profiling with async-profiler

[2021.05] Full GC every hour after deploying new application version

[2021.05] Spring Session JDBC + Apereo CAS = Heap memory leak, and it is a documented feature

[2021.04] Spring Boot + Spring Security + Apereo CAS + Concurrent Session Control = Heap memory leak

[2021.01] How can inefficient algorithm degrade performance with innocent G1GC in the middle? Humongous object strikes back

[2020.12] From one JDK bug to another?

[2020.11] Can G1GC cause outage?

[2020.11] Time to safepoint - finally there is a tool to find long ones, and yes it is the async-profiler

[2020.11] JVM internals basics - Stop-the-world phase (safepoints) - how it works?

[2020.11] To tune or not to tune? G1GC vs humongous allocation

[2020.11] Biased lock disabled, again

[2021.11] Core dump - the last line of defence during outages

[2021.09] The ultimate monitoring of the JVM application - out of the box

[2021.04] Spring Boot + good old JSP/Tags = disaster

Monday with JVM logs

[Safepoints] Introduction and safepoints logs

[JIT] JIT logs

[Classloader] Classloader logs - can attaching the JFR (and other profilers) cause the outage?

[GC] Heap after GC - do I have a memory leak?

[GC] Allocation rate

[GC][G1GC] Heap before GC - is my heap wasted?

[GC][G1GC] G1GC Stop-the-world phases

[GC][G1GC] Efficiency of the old generation cleanup

My open source projects

Aync-profiler utils

I created some tools that help me with profiling big application with Async-profiler:

JVM/GC logs analyzer

Here is my open source JVM and GC logs analyzer:

Krzysztof Ślusarski