No Free Lunch? Memory Allocation in the JVM
5:00 pm LONDON, london , london, London
This is a virtual Meetup occurring at 5PM UK time (GMT). Join the live broadcast on https://www.virtualjug.com
View the event in your timezone:
Take part in the live session discussion on our #live-session slack channel: https://bit.ly/337QHTE
The recording will be available immediately afterward.
Ever wondered how memory allocation on the JVM works?
The Java Virtual Machine features many generational garbage collectors that also use pointer bumping for allocation. The combination of these two techniques gives a fast allocation and collection path which has led to a commonly held belief in the Java community that allocation in general is cheap. This talk will challenge that belief by looking at what happens outside of the fast path and considering the impact of even fast path allocation on other parts of the system, such as caches and memory bandwidth.
You will see how optimisations from the JIT can reduce or eliminate many allocations but how reasoning about when these happen can be almost impossible from glancing at code. Examples will introduce you to common problems and tooling you can use to understand the allocation behaviour of your code.
From attending this talk you will understand:
* How allocation works in modern JVM Garbage Collectors
* Why allocation isn’t necessarily as cheap as it seems
* Why the JVM makes it difficult to reason about allocation behaviour by
* What kind of tooling you can use to understand the real allocation
behaviour of your code”
Speakers: Richard Warburton & Sadiq Jaffer
Richard is a Software Engineer, Teacher and Java Champion. He is the cofounder of Opsian.com and has a long-standing passion for improving Java performance. He’s worked as a developer in different areas including Developer Tools, HFT and Network Protocols. He has written the book “Java 8 Lambdas” for O’Reilly and helps developers learn via http://iteratrlearning.com and http://www.pluralsight.com/author/richard-warburton. Richard is an experienced conference speaker having spoken at dozens of events and sat on conference committees for some of the biggest conferences in Europe and the USA. He holds a PhD in Computer Science from The University of Warwick.
Sadiq holds a PhD in Autonomous Robotics and has for years consulted for multi-national companies designing and implementing highly scalable intelligent platforms. His experience has included deep learning systems, embedded platforms, desktop and mobile games development. He’s a regular speaker at software conferences including Devoxx Be and UK, Javazone and JAX London.