awesome-jvm

JVM tools

A curated list of performance-related JVM technologies and tools

A curated list of awesome loosely performance related JVM stuff. Inspired by awesome-python.

GitHub

2k stars
151 watching
219 forks
last commit: about 4 years ago
Linked from 6 awesome lists


Awesome JVM / Bytecode

asmtoolsUsed to develop tools for the production of Java .class files
Byte BuddyCode generation library creating Java classes at runtime without the help of a compiler
Jitescript188over 5 years agoBytecode generation library similar to BiteScript

Awesome JVM / Garbage collectors

Azul Pauseless Garbage CollectionProviding continuous, pauseless operation for Java applications
Balanced GCGC policy available in the Java Virtual Machine for IBM WebSphere Application Server V8
Epsilon GCCompletely passive GC implementation with bounded allocation limit, and lowest runtime performance overhead possible
G1The Garbage-First Garbage Collector
ShenandoahUltra-Low-Pause-Time Garbage Collector
The Garbage Collection HandbookBook that addresses new challenges to garbage collection made by recent advances in hardware and software
ZGCGarbage collector optimized for low latency and very large heaps

Awesome JVM / Load tools

GatlingAsynchronous non-blocking scenario driven load testing tool for testing HTTP servers
wrk24,290over 2 years agoA constant throughput, correct latency recording variant of wrk

Awesome JVM / Languages

CeylonObject-oriented, strong and static programming language with an emphasis on immutability, created by Red Hat
ClojureDialect of Lisp created by Rich Hickey. Dynamically typed with emphasis on functional programming
ErjangA JVM-based Erlang VM
EtaPure, lazy, strongly typed functional programming language on the JVM
Frege3,640about 4 years agoPure functional programming language in the spirit of Haskell
gojava184over 8 years agoJava bindings for Go packages
GoloA simple dynamic language that makes extensive usage of
GroovyOptionally typed and dynamic language, with static-typing and static compilation capabilities
JavaGeneral-purpose, concurrent, strongly typed, class-based object-oriented language
JRubyImplementation of the Ruby language on the JVM
JPHP1,712almost 5 years agoPHP on the Java VM
JythonPython for the Java Platform
KawaExtension of the Scheme language, which is in the Lisp family of programming languages
KotlinStatically typed programming language for the JVM, Android and the browser
LuaJJava-centric implementation of lua vm built to leverage standard Java features
NashornLightweight high-performance JavaScript runtime in Java with a native JVM
OCaml-JavaSupports OCaml language v4. Generates plain Java bytecode and have seamless integration with Java
Rembulan163over 6 years agoRembulan is an implementation of Lua 5.3 for the JVM, written in pure Java with minimal dependencies
RenjinJVM-based interpreter for the R language for the statistical analysis
ScalaStrong and static programming language that combine object-oriented and functional programming ideas
XtendFlexible and expressive dialect of Java, which compiles into Java 5 source code

Awesome JVM / Machine Learning

Deeplearning4jOpen-Source, Distributed, Deep Learning Library for the JVM
H2OFast statistical, machine learning & math runtime
Smile6,066almost 2 years agoStatistical Machine Intelligence & Learning Engine

Awesome JVM / Memory and concurrency

Agera7,194over 4 years agoReactive Programming for Android by Google
Agrona2,900almost 2 years agoLibrary of data structures and utility methods that are a common need when building high-performance applications
Apache ArrowA high-performance cross-system data layer for columnar in-memory analytics
bloofi78over 10 years agoJava implementation of multidimensional Bloom filters
Cap’n ProtoInsanely fast data interchange format and capability-based RPC system
caffeine15,998almost 2 years agoA high performance caching library for Java 8
Chronicle-Bytes408almost 2 years agoLow level memory access wrappers
Chronicle-Queue3,350almost 2 years agoMicro second messaging that stores everything to disk
Chronicle-Map2,800almost 2 years agoIn-memory key-value store designed for low-latency and/or multi-process applications
clj-ds219almost 3 years agoClojure's data structures modified for use outside of Clojure
colfer746about 2 years agoBinary serialization format and class generator
commons-mathLibrary of lightweight, self-contained mathematics and statistics components
CuckooFilter4J175over 3 years agoBloom filter replacement for approximated set-membership queries
cyclops1,319over 3 years agoIntegration modules for RxJava, Reactor, FunctionalJava, Guava & Javaslang
Eclipse Collections2,469almost 2 years agoCollections framework for Java
externalsortinginjava254over 3 years agoSort very large files using multiple cores and an external-memory algorithm
failsafe4,203over 2 years agoA lightweight, zero-dependency library for handling failures
fasttuple142almost 5 years agoCollections that are laid out adjacently in both on- and off-heap memory
fast-uuid168over 3 years agoJava library for quickly and efficiently parsing and writing UUIDs
FlatBuffersEfficient cross platform serialization library for C++, C#, Go, Java, JavaScript, PHP, and Python
geohash413almost 2 years agoJava utility methods for geohashing
gs-collections1,812over 3 years agoGoldman Sachs collections framework
hollow1,209almost 2 years agoJava library and comprehensive toolset for harnessing small to moderately sized in-memory datasets
high-scale-lib415over 11 years agoCliff Click's High Scale Library
hppc987about 2 years agoHigh Performance Primitive Collections
injector59over 11 years agoA new Executor for Java
java-concurrent-hash-trie-map151almost 6 years agoJava port of a concurrent trie hash map implementation from Scala collections
java-hll313over 8 years agoJava library for the HyperLogLog algorithm
JavaFastPFOR539over 2 years agoLibrary to compress and uncompress arrays of integers very fast
java-string-similarity2,697over 4 years agoString similarity and distance measures, including Levenshtein edit distance and sibblings, Jaro-Winkler, Longest Common Subsequence, cosine similarity etc
JCToolsConcurrent data structures currently missing from the JDK
DSL-JSONHigh performance JSON library with advanced compile-time databinding
jsoniterClaims to be the fastest JSON parser ever (copy of DSL-JSON)
jOOL2,092about 2 years agoUseful extensions to Java 8 lambdas
Koloboke1,010over 9 years agoJava Collections til the last breadcrumb of memory and performance
LevelDB1,537almost 4 years agoRewrite (port) of LevelDB in Java
lightweight_trie47over 14 years agoA very memory-efficient trie (radix tree) implementation
lmdbjni204over 5 years agoJava API to LMDB (HawtJNI) which is an ultra-fast, ultra-compact key-value embedded data store written in C
lmdbjava806over 2 years agoJava API to LMDB (JNR) which is an ultra-fast, ultra-compact key-value embedded data store written in C
low-gc-membuffers136over 4 years agoIn-memory circular buffers that use direct ByteBuffers to minimize GC overhead
lwjgl34,852almost 2 years agoJava library that enables cross-platform access to popular native APIs useful in the development of graphics (OpenGL), audio (OpenAL) and parallel computing (OpenCL) applications
MapDBCollections backed by off-heap or on-disk storage
mph-table97about 3 years agoMinimal Perfect Hash Tables are an immutable key/value store with efficient space utilization and fast reads
mugA small, zero-dep functional util library originating from Google
netty-buffersMemory buffer pool implementation similar to jemalloc
ObjectLayoutA layout-optimized Java data structure package
ohc1,072about 2 years agoJava large off heap cache developed for Apache Cassandra 3.0
okio8,815almost 2 years agoModern Java IO library that do clever things to save CPU and memory
onyx-java5over 9 years agoMirrors the Onyx Platform core API by providing a Java equivalent for each component of an Onyx workflow
parquetColumnar storage format that uses the record shredding and assembly algorithm described in the Dremel paper
PauselessHashMap151almost 4 years agoA java.util.HashMap compatible map that won't stall puts or gets when resizing
pcollections765over 2 years agoA Persistent Java Collections Library
protobufGoogle's data interchange format
QuasarLightweight threads and actors for the JVM
rtree1,094almost 2 years agoImmutable in-memory R-tree and R*-tree implementations in Java with reactive api
RTree2D132almost 2 years agoRTree2D is a 2D immutable R-tree with STR (Sort-Tile-Recursive) packing for ultra-fast nearest and intersection queries on plane and spherical surfaces
Reactive StreamsStandard for asynchronous stream processing with non-blocking back pressure
Reactive Streams Utilities64over 7 years agoFuture standard utilities library for Reactive Streams
RoaringBitmap3,586almost 2 years agoA better compressed bitset in Java
rollinghashjava75over 10 years agoRolling hash functions in Java
ReactorReactive data applications on the JVM for Java, Groovy, Clojure and other
RxJava47,954almost 2 years agoLibrary for composing asynchronous and event-based programs using observable sequences
SmoothieMap296over 6 years agojava.util.Map impl with worst put latencies more than 100 times smaller than java.util.HashMap
Simple Binary Encoding3,136almost 2 years agoHigh Performance Message Codec
splitmap19almost 8 years agoA parallel bitmap implementation
DataSketchesA Java software library of stochastic streaming algorithms
stormpot360almost 2 years agoA fast object pool for the JVM
stream-lib2,260almost 7 years agoA Java library for summarizing data in streams for which it is infeasible to store all events
streamvbyte379almost 2 years agoFast integer compression in C using the StreamVByte codec
TraneIOHigh-performance implementation of the Future abstraction
transducers-java120over 3 years agoComposable algorithmic transformations independent from the context of their input and output sources
VarInt23,384almost 2 years agoNo-deps variable int implementation without deps (by Bazel)
vavrFunctional Library for Java 8+
wire4,266almost 2 years agoClean, lightweight protocol buffers for Android and Java
Zero-Allocation-Hashing796almost 2 years agoHashing any sequences of bytes in Java, including all kinds of primitive arrays, buffers, CharSequences and more

Awesome JVM / Metaprogramming

AntlrParser generator for reading, processing, executing, or translating structured text or binary files
auto10,441almost 2 years agoA collection of source code generators for Java
Apache CalciteDynamic data management framework and SQL parser plugin
Checker FrameworkCompiler plug-ins that find bugs or verify their absence
compile-testing701almost 2 years agoTesting tools for javac and annotation processors
derive4j566almost 4 years agoAlgebraic data types constructors, pattern-matching, morphisms, optics and typeclasses
error-prone6,878almost 2 years agoCatch common Java mistakes as compile-time errors
GHCVM2,612about 4 years agoA Haskell to JVM compiler that supports GHC Haskell
GraalNew experimental just-in-time compiler for Java that is integrated with the HotSpot virtual machine
grappa63over 10 years agoJava fork of Parboiled. Write grammars with no preprocessing phase
immutablesGenerate simple, safe and consistent value objects
javaccParser generator for use with Java
javaparser5,479almost 2 years agoJava 1.8 Parser and Abstract Syntax Tree for Java
JavaPoet10,836almost 2 years agoA Java API for generating .java source files
jparsec343over 4 years agoBuilds mini parsers in pure Java a la Haskell Parsec
JSweetA transpiler from Java to TypeScript/JavaScript
MPSDesign and build extensible DSLs and editors
lombokReduce the amount of boilerplate code that is commonly written for Java classes
parboiled1,285almost 2 years agoParsing of arbitrary input text based on parsing expression grammars
Sulong627almost 8 years agoLLVM IR interpreter written in Java using Truffle and Graal
TeaVM2,666almost 2 years agoAhead-of-time translating compiler (transpiler) from Java bytecode to JavaScript
Truffle20,486almost 2 years agoFramework for implementing languages as simple interpreters
XtextFramework for development of programming languages and DSLs

Awesome JVM / Native

hawtjni166about 3 years agoA JNI code generator based on the JNI generator used in Eclipse SWT
Java Grinder496over 2 years agoCompile Java bytecode to microcontroller assembly
j2v82,557almost 4 years agoJava API for Google's V8 JavaScript engine
JavaCPP4,519almost 2 years agoJavaCPP provides efficient access to native C++ inside Java
jnr-ffi1,267almost 2 years agoLoad native libraries without writing JNI code by hand
jssembly125over 9 years agoExecution of native assembly from Java
NuProcess723almost 2 years agoA low-overhead, non-blocking I/O, external Process execution implementation for Java
Project PanamaEnriching the connections between the JVM and APIs used by C programmers

Awesome JVM / Network

Aeron7,466almost 2 years agoEfficient reliable UDP unicast, UDP multicast, and IPC message transport
armeria4,837almost 2 years agoAsynchronous RPC/API client/server library built on top of Java 8, Netty 4.1, HTTP/2, and Thrift
Chronicle-Network245about 3 years agoA High Performance Network library
comcast10,322over 2 years agoSimulating shitty network connections
gor18,700almost 2 years agoHTTP traffic replay in real-time
gRPCA high performance, open source, general RPC framework that puts mobile and HTTP/2 first
jRT48about 10 years agoMeasures response time of a java application to socket-based requests
JXIO79over 9 years agoJava API over AccelIO (C library), a high-performance asynchronous reliable messaging and RPC library optimized for hardware acceleration
K3PO48almost 4 years agoCreate arbitrary network traffic and behavior to certify whether a network endpoint behaves correctly
muxy822over 5 years agoSimulating real-world distributed system failures
NettyAsync event-driven network library for high performance protocol servers & clients
okhttp45,977almost 2 years agoAn HTTP+HTTP/2 client for Android and Java applications
one-nio665almost 2 years agolibrary for building high performance Java servers
proteus-java42over 7 years agoProteus Java Client based on RSocket
reactive-grpc834over 2 years agoReactive gRPC is a suite of libraries for using gRPC with Reactive Streams programming libraries
RSocketRSocket is a binary protocol for use on byte stream transports such as TCP, WebSockets, and Aeron
SimianArmy7,982almost 8 years agoResiliency tool that helps ensure that your applications can tolerate random instance failures
pcap4j1,174about 4 years agoJava library for capturing, crafting, and sending packets using libpcap
pig462almost 6 years agoA Linux packet crafting tool
tcpdumpPacket analyzer for network traffic capture
tcpflow1,702about 2 years agoCaptures TCP connections flows in a way that is convenient for protocol analysis and debugging
tcpreplay1,206about 2 years agoPcap editing and replay tools

Awesome JVM / Nix tools

atoptoolLogging of system and process activity for long-term analysis, highlighting overloaded system
bcc20,724almost 2 years agoTools for BPF-based Linux IO analysis, networking, monitoring, and more
Flame GraphsVisualization of profiled software, allowing the most frequent code-paths to be identified quickly and accurately
ioping953over 2 years agoSimple disk I/0 latency measuring tool
javapDisassembles class files into code that reflects the java bytecode
jhatJava Heap Analysis Tool
jhsdbLaunch a postmortem debugger to analyze the content of a core-dump from a crashed JVM
jinfoPrints configuration information for a given process
jstackPrints stack traces of threads for a given Java process
jstatMonitors GC and compiler statistics in the JVM
hwlocReports the structure of the processor, number of cores, hyperthreads and cache size
likwid1,695almost 2 years agoRead hardware performance counters on Intel and AMD processors
numactlControl NUMA policy for processes or shared memory
oprofileSystem-wide hardware performance monitoring with easy-to-use interface at low overhead
perfLinux profiling with performance counters
perf-tools9,935almost 3 years agoPerformance analysis tools based on Linux perf_events (aka perf) and ftrace
sysdigCapture system state and activity from a running Linux instance, then save, filter and analyze
sysstatPerformance monitoring tools for Linux
taskset/process-affinityRetrieve or set a processes’s CPU affinity
tiptopLike top but also shows instructions per cycle (IPC)

Awesome JVM / Profilers

allocation-instrumenter483almost 3 years agoJava agent that rewrites bytecode to instrument allocation sites
aprof220almost 3 years agoJava memory allocation profiler
async-profiler7,625almost 2 years agoSampling CPU profiler for Java featuring AsyncGetCallTrace + perf_events
BTrace5,836almost 2 years agoa safe, dynamic tracing tool for the Java platform
Bytemantracing, monitoring and testing tool for Java
bytestacks42over 2 years agoTurn JVM bytecode execution into flame graphs
ChrononRecord your entire java program. Replay on any machine
GCeasyMachine learning guided Garbage collection log analysis tool. Auto-detect problems in the JVM GC logs and recommend solutions to it
GCViewer4,488over 3 years agoGCViewer is a tool that visualizes verbose GC output
grav293over 7 years agoA collection of tools to help visualise process execution
hawkshawTools for tracking down memory / JVM problems & generating predictable-as-possible VM behaviour
HdrHistogramA Histogram that supports recording and analyzing sampled data value counts
hdrhistogram-metrics-reservoirA Metrics Reservoir implementation backed by HdrHistogram
HdrLogProcessing30over 5 years agoUtilities for HDR Histogram logs manipulation
heapster395over 10 years agoProduction heap profiling for the JVM
honest-profiler1,251almost 3 years agoSampling JVM profiler without the safepoint sample bias
jamm686over 2 years agoMeasure actual object memory use including JVM overhead
Java Flight Recorder (JFR)Tool for collecting diagnostic and profiling data about a running Java application with almost no performance overhead
java-sizeof120over 8 years agoMemory consumption estimator for Java
jcstressExperimental harness and tests to aid the research in the correctness of concurrency support in the JVM, class libraries, and hardware
jfr-flame-graph264almost 3 years agoConverting JFR Method Profiling Samples to FlameGraph compatible format
jfr-report-tool54over 8 years agoTool for creating reports from Java Flight Recorder dumps
jitwatch3,111almost 2 years agoLog analyser / visualiser for Java HotSpot JIT compiler
jitwatch-intellij169over 4 years agoJITWatch plugin for IntelliJ IDEA
jHiccupjHiccup is an open source tool designed to measure the pauses and stalls associated with an application’s underlying Java runtime platform
jmhMicro benchmarks written in Java and other languages targetting the JVM
jmh-compare-gui70about 10 years agoGUI for comparing JMH results
JOLAnalyze actual object layout schemes, footprint, and references in JVMs
JProfilerHelps resolve performance bottlenecks, pin down memory leaks and understand threading issues
JVMTIProvide a native API to inspect the state and to control the execution of applications running in the JVM
jvmtop1,229about 5 years agoLightweight console application to monitor running jvms on a machine in top-like manner
jvm-profiler1,785over 2 years agoJava Agent to collect various metrics and stacktraces for Hadoop/Spark JVM processes in a distributed way
MATJava heap analyzer that help find memory leaks and reduce memory consumption
leakcanary29,471about 2 years agoA memory leak detection library for Android and Java
metricsMeasure the behavior of critical components in production environment
micrometer4,504almost 2 years agoAn application metrics facade for the most popular monitoring tools
osqueryosquery is an instrumentation framework that expose the operating system as a high-performance relational database
OverseerLow-Level Hardware Monitoring and Management for Java
OpenTracingA vendor-neutral open standard for distributed tracing
perf-map-agent1,658about 6 years agoGenerate method mappings to use with the linux tool
perfj352over 7 years agoLinux perf for java programs
polarbear21almost 14 years agoA tool to help diagnose OutOfMemoryError conditions
Riemann JVM Profiler292about 2 years agoJVM agent which sends function-level profiler telemetry to a Riemann server for analysis, visualization, and storage
statsd-jvm-profiler330over 3 years agoJVM agent profiler that sends profiling data to StatsD
Swiss Java Knife3,319over 2 years agoSmall set of tools for JVM troublshooting, monitoring and profiling
TakipiTells you when and why code breaks in production
Tracer180about 3 years agoManages custom trace identifiers and carries them through distributed systems
YourKitFully featured, easy to use, low overhead profiler
Zipkin17,050almost 2 years agoA distributed tracing system gather timing data for disparate services developed by Twitter

Awesome JVM / Runtimes

Capsule1,150over 4 years agoDead-Simple Packaging and Deployment for JVM Apps
CRaSHThe shell for the Java Platform
Drip1,546over 5 years agoFast JVM launching without the hassle of persistent JVMs
HotswapAgent2,376almost 2 years agoRedefine classes at runtime and skip the redeploy process
jvmkill181over 3 years agoAgent that forcibly terminates the JVM when it is unable to allocate memory or create a thread
NailgunNailgun is a client, protocol, and server for running Java programs from the command line without incurring the JVM startup overhead

Awesome JVM / Virtual Machines

Avian1,219over 5 years agoLightweight highly portable JVM with an option for AOT compilation
DalvikAndroid runtime (ART) is the managed runtime used by applications and some system services on Android
DCEVMModification of Java HotSwap VM with unlimited support for reloading classes at runtime
HotSpotHotSpot virtual machine maintained and distributed by Oracle Corporation
IBM J9JVM developed by IBM
Eclipse OpenJ93,319almost 2 years agoEclipse OpenJ9
J2ObjC5,998almost 2 years agoTranslator from Java source to Objective-C code. Keeps shared code between iOS native apps and Android native apps
jvm.go3,594almost 7 years agoA JVM written in Go
ParparVM1,727almost 2 years agoAn Open Source Java bytecode to C translator for iOS native development. Designed as a part of the WORA for mobile project
MobiDevelop's RoboVM Fork970about 2 years agoAhead of time compiler for JVM bytecode targeting iOS, Mac OSX and Linux
ZingThe only JVM that eliminates Java garbage collection pauses for large heap sizes
ZuluThe only certified multi-platform build of OpenJDK: Free, 100% open source Java

Resources / Documentation

TCP TracepointsLinux bcc/BPF using tcplife by Brendan Gregg
Linux tracing workshop1,284over 6 years agoJVM monitoring with BPF, examples and hands-on labs for Linux tracing tools workshops
JVM Anatomy Parkmini-post series where every post goes deep for only a single topic by Aleksey Shipilёv
Coordinated Omission problemDiscussion on Mechanical Sympathy
False sharingThreads impact the performance of each other while modifying independent variables sharing the same cache line. Martin Thompson
The JVM specificationThe Java Virtual Machine Specification Java SE 8 Edition
The Java Memory ModelStarting point for discussions of and information concerning the Java Memory Model
The JSR-133 Cookbook for Compiler WritersUnofficial guide to implementing the new Java Memory Model (JMM) specified by JSR-133
Garbage Collection Tuning GuideHotSpot Virtual Machine Garbage Collection Tuning Guide
SafepointsWhere is my safepoint? Nitsan Wakart
Topics in High-Performance MessagingDesign decisions, experience and constraints explained in high performance messaging systems
Top 10 Performance MistakesDigest of the top 10 performance related mistakes Martin Thompson has seen in production
The USE methodThe Utilization Saturation and Errors (USE) Method is a methodology for analyzing the performance of any system. Brendan Gregg
An introduction to distributed systems9,085almost 4 years agoKyle Kingsbury (author of Jepsen)
Using JDK 9 Memory Order ModesFor expert programmers familiar with Java concurrency, but unfamiliar with the memory order modes available in JDK 9 provided by VarHandles
CPU Utilization is WrongMeasure instructions per cycle (IPC) for CPU utilization. Brendan Gregg
Linux Load Averages: Solving the MysteryBrendan Gregg
What every programmer should know about solid-state drivesEmmanuel Goossaert
Quick Tips for Fast Code on the JVMDaniel Spiewak

Resources / Communities

concurrency-interestDiscussion list for JSR-166
hotspot-compiler-devTechnical discussion about the development of the HotSpot bytecode compilers
hotspot-devHotSpot development mailing list
hotspot-gc-devTechnical discussion about the development of the HotSpot garbage collectors
mechanical-sympathyDiscussing how to code sympathetically to and measure the underlying stack/platform so good performance can be extracted
Performance Java User's GroupFor expert Java who want to push their systems to the next level
Virtual Machine Meetup 2017Venue for discussing the latest research and developments in the area of managed language execution

Resources / Media

FOSDEM 2018FOSDEM 2018 Free Java devroom
JFokus 2018The GC edition. Shenandoah, ZGC, Zing, Fibers, Falcon etc
G1 Garbage Collector in Java 8/9Kirk Pepperdine
Extreme Profiling: Digging Into HotspotsNitsan Wakart
Java vs. C PerformanceCliff Click
Why JNI is slow?Cliff Click
A Crash Course in Modern HardwareCliff Click
Java Profiling from the Ground UpNitsan Wakart
The Illusion of ExecutionNitsan Wakart
Mythbusting Modern Hardware to Gain 'Mechanical Sympathy'Martin Thompson
Designing for PerformanceMartin Thompson
How NOT to Measure LatencyGil Tene
JVM Language Summit 2015JVM Language Summit 2015
JVM Language Summit 2016JVM Language Summit 2016
JVM Language Summit 2017JVM Language Summit 2017
Bits of advice for VM writersCliff Click
Understanding Java garbage collection ...Gil Tene
Faster Object ArraysGil Tene at GOTO Conferences
Java Memory Model PragmaticsAleksey Shipilev
With GC Solved, What Else Makes a JVM Pause?John Cuthbertson
JVM MechanicsDouglas Hawkins
Give me 15 minutes and I'll change your view of Linux tracingBrendan Gregg
Kernel Recipes 2017: Performance Analysis with BPFBrendan Gregg
Shenandoah deep talkAleksey Shipilëv slightly-deeper-than-usual Shenandoah talk from Virtual Machine Meetup 2017
Shenandoah: The Garbage Collector That CouldAleksey Shipilev - Devoxx 2017/11
Analyzing and Debugging the Java HotSpot VM at the OS LevelVolker Simonis
Cliff Click podcast 2017/09/16Programming and Performance Intro
Cliff Click podcast 2017/09/16Bugs and Coding Styles
Cliff Click podcast 2017/09/18Java vs C/C++
Cliff Click podcast 2017/09/21Debugging Data Races
Cliff Click podcast 2017/09/24Fast Bytecodes for Funny Languages
Cliff Click podcast 2017/09/28Struct of Arrays vs Array of Structs
Cliff Click podcast 2017/10/04The 3 Hardest Problems in Programming
Cliff Click podcast 2017/11/05Modern Hardware Performance and Cache Lines
Cliff Click podcast 2017/11/09Queuing In Practice
Which technique do programming language parsers and interpreters use?Cliff Click
Everything about Stack Traces and Heap DumpsAndrei Pangin
Fast and safe production monitoring of JVM with BPF toolsSasha Goldshtein
The Future of the Linux Page CacheMatthew Wilcox

Resources / People

Aleksey ShipilëvDeveloping Oracle/Open JDK/Hotspot and other Java-related technologies
Andrey BreslavLead Language Designer of Kotlin @ JetBrains
Brian GoetzJava Language Architect at Oracle
Ben ChristensenFacebook, Netflix, Apple engineering
Brendan GreggCloud performance, kernel engineer, speaker, author
Charles NutterJRuby guy
Claes RedestadWorking with OpenJDK stuff @ Oracle
Cliff ClickCreator of the HotSpot Server Compiler
Dave DiceSenior research scientist in the Scalable Synchronization Research Group within Oracle
Dávid KarnokRxJava committer that blogs about advanced RxJava
Doug LeaAuthor of the Java memory model
Gil TeneAzul Systems
Heinz KabutzAuthor of 250+ Java Specialists' Newsletters
Ivan KrylovJVM expert
Jake WhartonSquare, Google, open source hacker
John RoseHotSpot developer
Jonas BonérFounder & CTO of Lightbend
Lukas EderBlogger. Author of JOOQ
Marcus LagergrenJava language team alumnus
Mark ReinholdChief Architect, Java Platform Group, Oracle
Martin ThompsonPasty faced performance gangster
Martijn VerburgJava Champion
Kirk PepperdineWorking in high performance and distributed computing for nearly 20 years
Nitsan WakartAzul Systems
Norman MaurerNetty developer
Paul PhillipsForever undisputed SLOC Scala compiler dev
Per LidenHacking on the HotSpot JVM at Oracle
Peter LawreyInnovative developer of high performance Java systems for competitive advantage
Rafael WinterhalterAuthor of ByteBuddy
Richard WarburtonDeveloper, Speaker, Author
Richard StartinPerformance Analyst, developer, blogger
Ron PresslerParallel Universe. Leading Fibers and Continuations for the JVM
Stephen ColebourneJava Champion. Occasional blogger and speaker. Best known for Joda projects and JSR-310
Todd L. MontgomeryEx-CTO, Ex-NASA researcher, network geek, messaging middleware designer
Stéphane MaldiniProject Reactor Lead @Pivotal
Stuart MarksDoctor Deprecator. Java/JDK/OpenJDK developer
Vladimir Ivanovhacking HotSpot JVM @ Oracle
Viktor KlangDeputy CTO at Typesafe Inc

Backlinks from these awesome lists:

More related projects: