Profilers are a useful tool for developers trying to find out performance bottlenecks in their application. Unfortunately the results of profiling can mislead developers. Don't worry - we’re here to help! This talk explains what's really going on when you use a sampling profiler, enabling you to understand where your application is actually spending its time. This talk focusses on JVM profiling, but a lot of the approaches are related to operating system mechanics and apply to a variety of different languages. One of the benefits of languages like Scala and Clojure which run on the JVM is instant access to any of this tooling.
We shall look at:
* What profiling APIs are available* Stack sampling profilers: stop motion view of your app
* How they work
* The official JVM stack sampling API.
* An unofficial API that offers an alternative
* A brave new open source profiler!
Richard is an empirical technologist and solver of deep-dive technical problems. Recently he has written a book on Java 8 Lambdas for O’Reilly and is running java8training.com. He’s worked as a developer in many areas including Statistical Analytics, Static Analysis, Compilers and Network Protocols. He is a leader in the London Java Community and runs Openjdk Hackdays. Richard is also a known conference speaker, having talked at Devoxx, JavaOne, JFokus, Devoxx UK, Geecon, Oredev, JAX London and Codemotion. He has obtained a PhD in Computer Science from The University of Warwick.