Red Hat Distinguished Engineer
Andrew Dinn
Andrew Dinn is a Distinguished Engineer in Red Hat's JDK team working on the OpenJDK JVM JIT Compiler and Runtime. He also leads JBoss Project Byteman and is a member of theGraalVM project.
Andrew Dinn's contributions
Debugging GraalVM-native images using gdb
Andrew Dinn
Discover how GraalVM adding DWARF debug information to its Linux images enables effective source-level Java-native image debugging through gdb.
Diagnosing Java applications on the fly with Byteman
Marko Myllynen
+1
An overview of Byteman, debug Java by injecting code into methods without the need to recompile, repackage, or even redeploy the application.
Java Class Metadata: A User Guide
Andrew Dinn
A user guide of Java Class Metadata. I presented a talk last week in the Free Java Room at FOSDEM 2018 on the subject of Java Class Metadata, explaining what it is, why it helps to know about it, what you might do to measure it, and reduce the impact of it's footprint on your Java application.
Video: Monitoring application events in Thermostat, using Byteman
Andrew Dinn
Thermostat is Red Hat's Monitoring and management tool for Java Deployments, allowing users to measure and monitor a host of different performance aspects of their Java applications. Available metrics range from raw CPU and memory usage to operation of the Garbage Collector and Compiler through to thread activity and method call/heap profiles. Thermostat provides a GUI view of activity of local and distributed JVMs in real time and it also backs up all the metrics it obtains to a persistent...
What Lies Beneath: A tour of the dark gritty underbelly of OpenJDK
Andrew Dinn
OpenJDK is the premier open source Java implementation. The OpenJDK project provides the code used to build Red Hat's Java releases for Fedora and RHEL and the Java releases used on most other Linux distributions. It also forms the basis of Oracle's proprietary Java binary releases. The Red Hat OpenJDK team has been working for some time now, along with organizations like the London Java Community (LJC) and some of our academic partners (e.g. Glasgow & Manchester) to encourage researchers...
Dude, where’s my PaaS memory? Tuning Java’s footprint in OpenShift (Part 2)
Andrew Dinn
Continued from part 1. The test web service The test web service implements a simple file cache storing up to 10 copies of any given named file. Uploading copies beyond the 10th one causes the oldest version to be discarded. The server supports a variety of requests allowing a new version of a file to be uploaded an existing file version to be downloaded listing of the name and version counts of all files in the cache deletion of all...
Dude, where's my PaaS memory? Tuning Java's footprint in OpenShift (Part 1)
Andrew Dinn
Is Java really greedy for memory? Java is often blamed for being an over-hungry consumer of physical memory. Indeed, until recently our OpenShift team were tempted to draw this same conclusion. OpenShift is Red Hat's open source Platform as a Service (PaaS) product. You can access it via public Cloud infrastructure managed by Red Hat (OpenShift Online) or even deploy it to your own data centre/private cloud (OpenShift Enterprise). OpenShift Online provides simple and manageable scalability to anyone developing and...
Debugging GraalVM-native images using gdb
Discover how GraalVM adding DWARF debug information to its Linux images enables effective source-level Java-native image debugging through gdb.
Diagnosing Java applications on the fly with Byteman
An overview of Byteman, debug Java by injecting code into methods without the need to recompile, repackage, or even redeploy the application.
Java Class Metadata: A User Guide
A user guide of Java Class Metadata. I presented a talk last week in the Free Java Room at FOSDEM 2018 on the subject of Java Class Metadata, explaining what it is, why it helps to know about it, what you might do to measure it, and reduce the impact of it's footprint on your Java application.
Video: Monitoring application events in Thermostat, using Byteman
What Lies Beneath: A tour of the dark gritty underbelly of OpenJDK
Dude, where’s my PaaS memory? Tuning Java’s footprint in OpenShift (Part 2)
Dude, where's my PaaS memory? Tuning Java's footprint in OpenShift (Part 1)