Foojay Podcast #23: Java Profiling and Performance

How do you get the maximum performance out of your Java application?

And how to use profiling to find the bottlenecks?

Let’s learn all about it in this podcast, with Heinz Kabutz, Marcus Lagergren, Chris Newland, and Frank Delporte!

Java profiling is a crucial technique for measuring and improving the performance of applications.

It helps identify bottlenecks, memory leaks, and other application performance issues.

There are various challenges with using Java profiling, and the need for profiling depends on the complexity of the application and the performance requirements.

Let us learn more about the challenges, different profiling approaches, and when to use Java profiling to reach the best performance with our Java code.

Guests

Chris Newland

@chriswhocodes

mastodon.social/@chriswhocodes

chriswhocodes.com/

Marcus Hirt

@hirt

hirt.se/blog/

Heinz Kabutz

@heinzkabutz

linkedin.com/in/heinzkabutz

www.javaspecialists.eu/

Podcast

Host: Marcus Lagergren

 @lagergren

Production: Frank Delporte

 @FrankDelporte

 foojay.social/@frankdelporte

Content

00’00 Introduction of the host and guests

jitwatch

jacoline

foojay.io/command-line-arguments

Book: Optimizing Java

JCrete

10’42 History of Java and how performance was a challenge in the beginning

 14’21 What is profiling? What should be profiled? What is good profiling?

 28’44 What you should learn about profiling and performance

 31’43 Impact of the different garbage collectors on performance

 32’59 Performance and profile should focus on the right requirement for your system

34’39 Ergonomics in the JVM and tunes itself for the system it is running on

mail.openjdk.org/pipermail/hotspot-dev/2023-May/074325.html

39’49 What are current important evolutions and upcoming coming or required changes in profiling?

 43’19 Break-throughs in Stop-The-World approaches

46’43 Minimize the number of JVM flags you use

https://jacoline.dev/stats

 56’47 About Errors and Exceptions

58’30 The current runtimes and operating systems are very forgiving

https://openjdk.org/jeps/312 (Thread-Local Handshakes)

https://openjdk.org/jeps/444 (Virtual Threads)

1:04’26 Is profiling becoming less relevant?

foojay.io/today/continuous-production-profiling-and-diagnostics

1:10’20 Conclusion

The post Foojay Podcast #23: Java Profiling and Performance appeared first on foojay.