Speaker Details

Francesco Nigro
Red Hat
I've been working for many years in the computer field. In the last 15 years I've cultivated a strong passion in Java development and the under the hood details of OpenJDK, recently joined by C and (x86) ASM.Big fan of DDD (Domain Driven Design) world, I've developed several Event-Sourcing high performance solutions in the medical and IoT field.I'm an active member of various online communities on performance (https://groups.google.com/forum/#!forum/mechanical-sympathy), Principal (Software) Performance Engineer and Performance Lead for Red Hat on Quarkus, Red Hat Top Inventor (2019).I've collaborated to different projects related high-performance computing both as committer and contributors eg Quarkus, Vert-x, Netty committer, JCTools author, PMC of ActiveMQ Apache Artemis (Messaging Broker), HdrHistogram, JGroups-raft, ...
The session will start with a quick introduction to the theory of profiling discussing the motivations, explaining the different types of profiling and visualization format while listing the tools available for this purpose. This also includes some tooling for reliably emulating the load generation and validating the improvements.
Then we will guide the attendees through the profiling tools that we want to use throughout the session:
Then we will put these tools at work in a practical real-world scenario. We will provide a sample Quarkus-based Java webapp, using a simple but realistic technology stack, having different performance issues involving excessive memory allocation, CPU consumption, slow blocking I/O, locks contention and cache misses. We will demonstrate how to use the before mentioned profiling tools to discover, investigate, fix and verify these issues.