awesome-jvm
github.com/deephacks/awesome-jvm ↗A curated list of awesome loosely performance related JVM stuff. Inspired by awesome-python.
Use this list with your AI agent
Add the Context Awesome MCP server to Claude, Cursor, or any MCP client, then ask:
"Show me media resources from awesome-jvm"
Installation instructions →What's inside
Media
- A Crash Course in Modern Hardware
Cliff Click
- Analyzing and Debugging the Java HotSpot VM at the OS Level
Volker Simonis.
- Bits of advice for VM writers
Cliff Click.
- Cliff Click podcast 2017/09/16
Bugs and Coding Styles.
- Cliff Click podcast 2017/09/16
Programming and Performance Intro.
- Cliff Click podcast 2017/09/18
Java vs C/C++.
Network
- Aeron
Efficient reliable UDP unicast, UDP multicast, and IPC message transport.
- armeria
Asynchronous RPC/API client/server library built on top of Java 8, Netty 4.1, HTTP/2, and Thrift.
- Chronicle-Network
A High Performance Network library.
- comcast
Simulating shitty network connections.
- gor
HTTP traffic replay in real-time.
- gRPC
A high performance, open source, general RPC framework that puts mobile and HTTP/2 first.
Memory and concurrency
- Agera
Reactive Programming for Android by Google.
- Agrona
Library of data structures and utility methods that are a common need when building high-performance applications.
- Apache Arrow
A high-performance cross-system data layer for columnar in-memory analytics.
- bloofi
Java implementation of multidimensional Bloom filters
- caffeine
A high performance caching library for Java 8.
- Cap’n Proto
Insanely fast data interchange format and capability-based RPC system.
People
- Aleksey Shipilëv
Developing Oracle/Open JDK/Hotspot and other Java-related technologies.
- Andrey Breslav
Lead Language Designer of Kotlin @ JetBrains.
- Ben Christensen
Facebook, Netflix, Apple engineering.
- Brendan Gregg
Cloud performance, kernel engineer, speaker, author.
- Brian Goetz
Java Language Architect at Oracle.
- Charles Nutter
JRuby guy.
Profilers
- allocation-instrumenter
Java agent that rewrites bytecode to instrument allocation sites.
- aprof
Java memory allocation profiler.
- async-profiler
Sampling CPU profiler for Java featuring AsyncGetCallTrace + perf_events.
- BTrace
a safe, dynamic tracing tool for the Java platform.
- Byteman
tracing, monitoring and testing tool for Java
- bytestacks
Turn JVM bytecode execution into flame graphs.
Documentation
- An introduction to distributed systems
Kyle Kingsbury (author of Jepsen).
- Coordinated Omission problem
Discussion on Mechanical Sympathy.
- CPU Utilization is Wrong
Measure instructions per cycle (IPC) for CPU utilization. Brendan Gregg.
- False sharing
Threads impact the performance of each other while modifying independent variables sharing the same cache line. Martin Thompson.
- Garbage Collection Tuning Guide
HotSpot Virtual Machine Garbage Collection Tuning Guide.
- JVM Anatomy Park
mini-post series where every post goes deep for only a single topic by Aleksey Shipilёv.
Metaprogramming
- Antlr
Parser generator for reading, processing, executing, or translating structured text or binary files.
- Apache Calcite
Dynamic data management framework and SQL parser plugin.
- auto
A collection of source code generators for Java.
- Checker Framework
Compiler plug-ins that find bugs or verify their absence.
- compile-testing
Testing tools for javac and annotation processors.
- derive4j
Algebraic data types constructors, pattern-matching, morphisms, optics and typeclasses.
Bytecode
- asmtools
Used to develop tools for the production of Java .class files.
- Byte Buddy
Code generation library creating Java classes at runtime without the help of a compiler.
- Jitescript
Bytecode generation library similar to BiteScript.
Showing a sample of 353 resources. View the full list on GitHub →