Foojay.io, the Friends Of OpenJDK!

Java Performance and Profiling (#23)


Listen Later

How do you get the maximum performance out of your Java application? And how to use profiling to find the bottlenecks? Let's learn it in this podcast!

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

...more
View all episodesView all episodes
Download on the App Store

Foojay.io, the Friends Of OpenJDK!By Foojay.io


More shows like Foojay.io, the Friends Of OpenJDK!

View all
Software Engineering Radio - the podcast for professional software developers by se-radio@computer.org

Software Engineering Radio - the podcast for professional software developers

266 Listeners

The Changelog: Software Development, Open Source by Changelog Media

The Changelog: Software Development, Open Source

285 Listeners

The Joe Rogan Experience by Joe Rogan

The Joe Rogan Experience

223,562 Listeners

Software Engineering Daily by Software Engineering Daily

Software Engineering Daily

629 Listeners

Duke's Corner by Jim Grisanzio

Duke's Corner

8 Listeners

airhacks.fm podcast with adam bien by Adam Bien

airhacks.fm podcast with adam bien

5 Listeners

CoRecursive: Coding Stories by Adam Gordon Bell - Software Developer

CoRecursive: Coding Stories

185 Listeners

The Stack Overflow Podcast by The Stack Overflow Podcast

The Stack Overflow Podcast

63 Listeners