Skip to content
51

Awesome JVM

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

2.2k stars226 forks352 entriesLast push Aug 30, 2022 (4 years ago)License CC0-1.0

This page lists names, links and short descriptions. The original list on GitHub is the source and belongs to its authors.

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.

In 2 lists

Jitescript

Bytecode generation library similar to BiteScript.

Garbage collectors

Azul Pauseless Garbage Collection

Providing continuous, pauseless operation for Java applications.

Balanced GC

GC policy available in the Java Virtual Machine for IBM WebSphere Application Server V8.

Epsilon GC

Completely passive GC implementation with bounded allocation limit, and lowest runtime performance overhead possible.

G1

The Garbage-First Garbage Collector.

Shenandoah

Ultra-Low-Pause-Time Garbage Collector.

The Garbage Collection Handbook

Book that addresses new challenges to garbage collection made by recent advances in hardware and software.

ZGC

Garbage collector optimized for low latency and very large heaps.

Load tools

Gatling

Asynchronous non-blocking scenario driven load testing tool for testing HTTP servers.

In 3 lists

wrk2

A constant throughput, correct latency recording variant of wrk.

In 3 lists

Languages

Ceylon

Object-oriented, strong and static programming language with an emphasis on immutability, created by Red Hat.

Clojure

Dialect of Lisp created by Rich Hickey. Dynamically typed with emphasis on functional programming.

In 2 lists

Erjang

A JVM-based Erlang VM.

Eta

Pure, lazy, strongly typed functional programming language on the JVM.

In 2 lists

Frege

Pure functional programming language in the spirit of Haskell.

In 2 lists

gojava

Java bindings for Go packages.

Golo

A simple dynamic language that makes extensive usage of invokedynamic.

Groovy

Optionally typed and dynamic language, with static-typing and static compilation capabilities.

In 2 lists

Java

General-purpose, concurrent, strongly typed, class-based object-oriented language.

JRuby

Implementation of the Ruby language on the JVM.

JPHP

PHP on the Java VM.

Jython

Python for the Java Platform.

Kawa

Extension of the Scheme language, which is in the Lisp family of programming languages.

Kotlin

Statically typed programming language for the JVM, Android and the browser.

LuaJ

Java-centric implementation of lua vm built to leverage standard Java features.

Nashorn

Lightweight high-performance JavaScript runtime in Java with a native JVM.

OCaml-Java

Supports OCaml language v4. Generates plain Java bytecode and have seamless integration with Java.

In 2 lists

Rembulan

Rembulan is an implementation of Lua 5.3 for the JVM, written in pure Java with minimal dependencies.

Renjin

JVM-based interpreter for the R language for the statistical analysis

In 2 lists

Scala

Strong and static programming language that combine object-oriented and functional programming ideas.

Xtend

Flexible and expressive dialect of Java, which compiles into Java 5 source code.

Machine Learning

Deeplearning4j

Open-Source, Distributed, Deep Learning Library for the JVM.

H2O

Fast statistical, machine learning & math runtime.

In 3 lists

Smile

Statistical Machine Intelligence & Learning Engine.

In 3 lists

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.

In 2 lists

Apache Arrow

A high-performance cross-system data layer for columnar in-memory analytics.

bloofi

Java implementation of multidimensional Bloom filters

Cap’n Proto

Insanely fast data interchange format and capability-based RPC system.

In 4 listsDetails

caffeine

A high performance caching library for Java 8.

In 3 lists

Chronicle-Bytes

Low level memory access wrappers.

Chronicle-Queue

Micro second messaging that stores everything to disk.

In 2 lists

Chronicle-Map

In-memory key-value store designed for low-latency and/or multi-process applications.

In 2 lists

clj-ds

Clojure's data structures modified for use outside of Clojure.

colfer

Binary serialization format and class generator.

In 3 lists

commons-math

Library of lightweight, self-contained mathematics and statistics components.

CuckooFilter4J

Bloom filter replacement for approximated set-membership queries.

cyclops

Integration modules for RxJava, Reactor, FunctionalJava, Guava & Javaslang.

Eclipse Collections

Collections framework for Java.

externalsortinginjava

Sort very large files using multiple cores and an external-memory algorithm.

failsafe

A lightweight, zero-dependency library for handling failures.

fasttuple

Collections that are laid out adjacently in both on- and off-heap memory.

fast-uuid

Java library for quickly and efficiently parsing and writing UUIDs.

FlatBuffers

Efficient cross platform serialization library for C++, C#, Go, Java, JavaScript, PHP, and Python.

geohash

Java utility methods for geohashing.

In 3 lists

gs-collections

Goldman Sachs collections framework.

In 2 lists

hollow

Java library and comprehensive toolset for harnessing small to moderately sized in-memory datasets.

In 2 lists

high-scale-lib

Cliff Click's High Scale Library.

hppc

High Performance Primitive Collections.

In 2 lists

injector

A new Executor for Java.

java-concurrent-hash-trie-map

Java port of a concurrent trie hash map implementation from Scala collections.

java-hll

Java library for the HyperLogLog algorithm.

JavaFastPFOR

Library to compress and uncompress arrays of integers very fast.

java-string-similarity

String similarity and distance measures, including Levenshtein edit distance and sibblings, Jaro-Winkler, Longest Common Subsequence, cosine similarity etc.

JCTools

Concurrent data structures currently missing from the JDK.

DSL-JSON

High performance JSON library with advanced compile-time databinding.

In 3 lists

jsoniter

Claims to be the fastest JSON parser ever (copy of DSL-JSON).

jOOL

Useful extensions to Java 8 lambdas.

In 3 lists

Koloboke

Java Collections til the last breadcrumb of memory and performance.

In 2 lists

LevelDB

Rewrite (port) of LevelDB in Java.

In 2 lists

lightweight_trie

A very memory-efficient trie (radix tree) implementation.

lmdbjni

Java API to LMDB (HawtJNI) which is an ultra-fast, ultra-compact key-value embedded data store written in C.

In 2 lists

lmdbjava

Java API to LMDB (JNR) which is an ultra-fast, ultra-compact key-value embedded data store written in C.

low-gc-membuffers

In-memory circular buffers that use direct ByteBuffers to minimize GC overhead.

lwjgl3

Java library that enables cross-platform access to popular native APIs useful in the development of graphics (OpenGL), audio (OpenAL) and parallel computing (OpenCL) applications.

In 3 lists

MapDB

Collections backed by off-heap or on-disk storage.

mph-table

Minimal Perfect Hash Tables are an immutable key/value store with efficient space utilization and fast reads.

mug

A small, zero-dep functional util library originating from Google.

netty-buffers

Memory buffer pool implementation similar to jemalloc.

ObjectLayout

A layout-optimized Java data structure package.

ohc

Java large off heap cache developed for Apache Cassandra 3.0.

okio

Modern Java IO library that do clever things to save CPU and memory.

In 3 lists

onyx-java

Mirrors the Onyx Platform core API by providing a Java equivalent for each component of an Onyx workflow.

parquet

Columnar storage format that uses the record shredding and assembly algorithm described in the Dremel paper.

In 3 lists

PauselessHashMap

A java.util.HashMap compatible map that won't stall puts or gets when resizing.

pcollections

A Persistent Java Collections Library.

In 2 lists

protobuf

Google's data interchange format.

In 3 lists

Quasar

Lightweight threads and actors for the JVM.

rtree

Immutable in-memory R-tree and R*-tree implementations in Java with reactive api.

RTree2D

RTree2D 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 Streams

Standard for asynchronous stream processing with non-blocking back pressure.

In 2 lists

Reactive Streams Utilities

Future standard utilities library for Reactive Streams.

RoaringBitmap

A better compressed bitset in Java.

In 2 lists

rollinghashjava

Rolling hash functions in Java.

Reactor

Reactive data applications on the JVM for Java, Groovy, Clojure and other.

In 2 lists

RxJava

Library for composing asynchronous and event-based programs using observable sequences.

In 6 listsDetails

SmoothieMap

java.util.Map impl with worst put latencies more than 100 times smaller than java.util.HashMap.

Simple Binary Encoding

High Performance Message Codec.

In 6 listsDetails

splitmap

A parallel bitmap implementation.

DataSketches

A Java software library of stochastic streaming algorithms.

stormpot

A fast object pool for the JVM.

stream-lib

A Java library for summarizing data in streams for which it is infeasible to store all events.

In 2 lists

streamvbyte

Fast integer compression in C using the StreamVByte codec.

TraneIO

High-performance implementation of the Future abstraction.

transducers-java

Composable algorithmic transformations independent from the context of their input and output sources.

VarInt

No-deps variable int implementation without deps (by Bazel).

In 3 lists

vavr

Functional Library for Java 8+.

wire

Clean, lightweight protocol buffers for Android and Java.

In 3 lists

Zero-Allocation-Hashing

Hashing any sequences of bytes in Java, including all kinds of primitive arrays, buffers, CharSequences and more.

Metaprogramming

Antlr

Parser generator for reading, processing, executing, or translating structured text or binary files.

In 2 lists

auto

A collection of source code generators for Java.

In 3 lists

Apache Calcite

Dynamic data management framework and SQL parser plugin.

Checker Framework

Compiler plug-ins that find bugs or verify their absence.

In 2 lists

compile-testing

Testing tools for javac and annotation processors.

derive4j

Algebraic data types constructors, pattern-matching, morphisms, optics and typeclasses.

In 2 lists

error-prone

Catch common Java mistakes as compile-time errors.

In 4 listsDetails

GHCVM

A Haskell to JVM compiler that supports GHC Haskell.

In 2 lists

Graal

New experimental just-in-time compiler for Java that is integrated with the HotSpot virtual machine.

grappa

Java fork of Parboiled. Write grammars with no preprocessing phase.

immutables

Generate simple, safe and consistent value objects.

In 2 lists

javacc

Parser generator for use with Java.

In 2 lists

javaparser

Java 1.8 Parser and Abstract Syntax Tree for Java.

In 2 lists

JavaPoet

A Java API for generating .java source files.

In 2 lists

jparsec

Builds mini parsers in pure Java a la Haskell Parsec.

JSweet

A transpiler from Java to TypeScript/JavaScript.

MPS

Design and build extensible DSLs and editors.

lombok

Reduce the amount of boilerplate code that is commonly written for Java classes.

parboiled

Parsing of arbitrary input text based on parsing expression grammars.

In 2 lists

Sulong

LLVM IR interpreter written in Java using Truffle and Graal.

TeaVM

Ahead-of-time translating compiler (transpiler) from Java bytecode to JavaScript.

In 2 lists

Truffle

Framework for implementing languages as simple interpreters.

Xtext

Framework for development of programming languages and DSLs.

Native

hawtjni

A JNI code generator based on the JNI generator used in Eclipse SWT.

Java Grinder

Compile Java bytecode to microcontroller assembly.

j2v8

Java API for Google's V8 JavaScript engine.

JavaCPP

JavaCPP provides efficient access to native C++ inside Java.

In 5 listsDetails

jnr-ffi

Load native libraries without writing JNI code by hand.

In 3 lists

jssembly

Execution of native assembly from Java.

NuProcess

A low-overhead, non-blocking I/O, external Process execution implementation for Java.

Project Panama

Enriching the connections between the JVM and APIs used by C programmers.

Network

Aeron

Efficient reliable UDP unicast, UDP multicast, and IPC message transport.

In 3 lists

armeria

Asynchronous RPC/API client/server library built on top of Java 8, Netty 4.1, HTTP/2, and Thrift.

In 3 lists

Chronicle-Network

A High Performance Network library.

comcast

Simulating shitty network connections.

In 3 lists

gor

HTTP traffic replay in real-time.

In 2 lists

gRPC

A high performance, open source, general RPC framework that puts mobile and HTTP/2 first.

In 2 lists

jRT

Measures response time of a java application to socket-based requests.

JXIO

Java API over AccelIO (C library), a high-performance asynchronous reliable messaging and RPC library optimized for hardware acceleration.

K3PO

Create arbitrary network traffic and behavior to certify whether a network endpoint behaves correctly.

In 2 lists

muxy

Simulating real-world distributed system failures.

In 2 lists

Netty

Async event-driven network library for high performance protocol servers & clients.

okhttp

An HTTP+HTTP/2 client for Android and Java applications.

In 4 lists

one-nio

library for building high performance Java servers.

proteus-java

Proteus Java Client based on RSocket.

reactive-grpc

Reactive gRPC is a suite of libraries for using gRPC with Reactive Streams programming libraries.

In 2 lists

RSocket

RSocket is a binary protocol for use on byte stream transports such as TCP, WebSockets, and Aeron.

In 3 lists

SimianArmy

Resiliency tool that helps ensure that your applications can tolerate random instance failures.

In 4 lists

pcap4j

Java library for capturing, crafting, and sending packets using libpcap.

pig

A Linux packet crafting tool.

In 4 lists

tcpdump

Packet analyzer for network traffic capture.

In 5 listsDetails

tcpflow

Captures TCP connections flows in a way that is convenient for protocol analysis and debugging.

In 4 lists

tcpreplay

Pcap editing and replay tools.

In 4 lists

Nix tools

atoptool

Logging of system and process activity for long-term analysis, highlighting overloaded system.

bcc

Tools for BPF-based Linux IO analysis, networking, monitoring, and more.

In 5 listsDetails

Flame Graphs

Visualization of profiled software, allowing the most frequent code-paths to be identified quickly and accurately.

In 2 lists

ioping

Simple disk I/0 latency measuring tool.

javap

Disassembles class files into code that reflects the java bytecode.

jhat

Java Heap Analysis Tool

jhsdb

Launch a postmortem debugger to analyze the content of a core-dump from a crashed JVM.

jinfo

Prints configuration information for a given process.

jstack

Prints stack traces of threads for a given Java process.

jstat

Monitors GC and compiler statistics in the JVM.

hwloc

Reports the structure of the processor, number of cores, hyperthreads and cache size.

likwid

Read hardware performance counters on Intel and AMD processors.

In 3 lists

numactl

Control NUMA policy for processes or shared memory.

oprofile

System-wide hardware performance monitoring with easy-to-use interface at low overhead.

In 2 lists

perf

Linux profiling with performance counters.

In 2 lists

perf-tools

Performance analysis tools based on Linux perf_events (aka perf) and ftrace.

In 2 lists

sysdig

Capture system state and activity from a running Linux instance, then save, filter and analyze.

sysstat

Performance monitoring tools for Linux.

taskset/process-affinity

Retrieve or set a processes’s CPU affinity.

tiptop

Like top but also shows instructions per cycle (IPC).

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

In 2 lists

bytestacks

Turn JVM bytecode execution into flame graphs.

Chronon

Record your entire java program. Replay on any machine.

GCeasy

Machine learning guided Garbage collection log analysis tool. Auto-detect problems in the JVM GC logs and recommend solutions to it.

GCViewer

GCViewer is a tool that visualizes verbose GC output.

In 2 lists

grav

A collection of tools to help visualise process execution.

hawkshaw

Tools for tracking down memory / JVM problems & generating predictable-as-possible VM behaviour.

HdrHistogram

A Histogram that supports recording and analyzing sampled data value counts.

hdrhistogram-metrics-reservoir

A Metrics Reservoir implementation backed by HdrHistogram.

HdrLogProcessing

Utilities for HDR Histogram logs manipulation.

heapster

Production heap profiling for the JVM.

honest-profiler

Sampling JVM profiler without the safepoint sample bias.

jamm

Measure 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-sizeof

Memory consumption estimator for Java.

jcstress

Experimental harness and tests to aid the research in the correctness of concurrency support in the JVM, class libraries, and hardware.

jfr-flame-graph

Converting JFR Method Profiling Samples to FlameGraph compatible format.

jfr-report-tool

Tool for creating reports from Java Flight Recorder dumps.

jitwatch

Log analyser / visualiser for Java HotSpot JIT compiler.

In 3 lists

jitwatch-intellij

JITWatch plugin for IntelliJ IDEA.

jHiccup

jHiccup is an open source tool designed to measure the pauses and stalls associated with an application’s underlying Java runtime platform.

jmh

Micro benchmarks written in Java and other languages targetting the JVM.

In 2 lists

jmh-compare-gui

GUI for comparing JMH results.

JOL

Analyze actual object layout schemes, footprint, and references in JVMs.

JProfiler

Helps resolve performance bottlenecks, pin down memory leaks and understand threading issues.

In 2 lists

JVMTI

Provide a native API to inspect the state and to control the execution of applications running in the JVM.

jvmtop

Lightweight console application to monitor running jvms on a machine in top-like manner.

jvm-profiler

Java Agent to collect various metrics and stacktraces for Hadoop/Spark JVM processes in a distributed way.

MAT

Java heap analyzer that help find memory leaks and reduce memory consumption.

leakcanary

A memory leak detection library for Android and Java.

In 3 lists

metrics

Measure the behavior of critical components in production environment.

micrometer

An application metrics facade for the most popular monitoring tools.

In 2 lists

osquery

osquery is an instrumentation framework that expose the operating system as a high-performance relational database.

In 5 listsDetails

Overseer

Low-Level Hardware Monitoring and Management for Java.

OpenTracing

A vendor-neutral open standard for distributed tracing.

perf-map-agent

Generate method mappings to use with the linux perf tool.

perfj

Linux perf for java programs.

polarbear

A tool to help diagnose OutOfMemoryError conditions.

Riemann JVM Profiler

JVM agent which sends function-level profiler telemetry to a Riemann server for analysis, visualization, and storage.

statsd-jvm-profiler

JVM agent profiler that sends profiling data to StatsD.

In 2 lists

Swiss Java Knife

Small set of tools for JVM troublshooting, monitoring and profiling.

Takipi

Tells you when and why code breaks in production.

Tracer

Manages custom trace identifiers and carries them through distributed systems.

YourKit

Fully featured, easy to use, low overhead profiler.

Zipkin

A distributed tracing system gather timing data for disparate services developed by Twitter.

In 4 listsDetails

Runtimes

Capsule

Dead-Simple Packaging and Deployment for JVM Apps.

In 2 lists

CRaSH

The shell for the Java Platform.

In 2 lists

Drip

Fast JVM launching without the hassle of persistent JVMs.

HotswapAgent

Redefine classes at runtime and skip the redeploy process.

In 3 lists

jvmkill

Agent that forcibly terminates the JVM when it is unable to allocate memory or create a thread.

Nailgun

Nailgun is a client, protocol, and server for running Java programs from the command line without incurring the JVM startup overhead.

Virtual Machines

Avian

Lightweight highly portable JVM with an option for AOT compilation.

Dalvik

Android runtime (ART) is the managed runtime used by applications and some system services on Android.

DCEVM

Modification of Java HotSwap VM with unlimited support for reloading classes at runtime.

In 2 lists

HotSpot

HotSpot virtual machine maintained and distributed by Oracle Corporation.

IBM J9

JVM developed by IBM.

Eclipse OpenJ9

Eclipse OpenJ9.

J2ObjC

Translator from Java source to Objective-C code. Keeps shared code between iOS native apps and Android native apps.

In 3 lists

jvm.go

A JVM written in Go.

In 3 lists

ParparVM

An Open Source Java bytecode to C translator for iOS native development. Designed as a part of the Codename One WORA for mobile project.

In 3 lists

MobiDevelop's RoboVM Fork

Ahead of time compiler for JVM bytecode targeting iOS, Mac OSX and Linux.

Zing

The only JVM that eliminates Java garbage collection pauses for large heap sizes.

Zulu

The only certified multi-platform build of OpenJDK: Free, 100% open source Java.

Documentation

TCP Tracepoints

Linux bcc/BPF using tcplife by Brendan Gregg

Linux tracing workshop

JVM monitoring with BPF, examples and hands-on labs for Linux tracing tools workshops.

In 2 lists

JVM Anatomy Park

mini-post series where every post goes deep for only a single topic by Aleksey Shipilёv.

Coordinated Omission problem

Discussion on Mechanical Sympathy.

In 23 listsDetails

False sharing

Threads impact the performance of each other while modifying independent variables sharing the same cache line. Martin Thompson.

The JVM specification

The Java Virtual Machine Specification Java SE 8 Edition.

The Java Memory Model

Starting point for discussions of and information concerning the Java Memory Model.

The JSR-133 Cookbook for Compiler Writers

Unofficial guide to implementing the new Java Memory Model (JMM) specified by JSR-133.

Garbage Collection Tuning Guide

HotSpot Virtual Machine Garbage Collection Tuning Guide.

Safepoints

Where is my safepoint? Nitsan Wakart.

Topics in High-Performance Messaging

Design decisions, experience and constraints explained in high performance messaging systems.

Top 10 Performance Mistakes

Digest of the top 10 performance related mistakes Martin Thompson has seen in production.

The USE method

The Utilization Saturation and Errors (USE) Method is a methodology for analyzing the performance of any system. Brendan Gregg.

An introduction to distributed systems

Kyle Kingsbury (author of Jepsen).

In 2 lists

Using JDK 9 Memory Order Modes

For expert programmers familiar with Java concurrency, but unfamiliar with the memory order modes available in JDK 9 provided by VarHandles.

CPU Utilization is Wrong

Measure instructions per cycle (IPC) for CPU utilization. Brendan Gregg.

Linux Load Averages: Solving the Mystery

Brendan Gregg.

What every programmer should know about solid-state drives

Emmanuel Goossaert.

Quick Tips for Fast Code on the JVM

Daniel Spiewak.

Communities

concurrency-interest

Discussion list for JSR-166.

hotspot-compiler-dev

Technical discussion about the development of the HotSpot bytecode compilers.

hotspot-dev

HotSpot development mailing list.

hotspot-gc-dev

Technical discussion about the development of the HotSpot garbage collectors.

Coordinated Omission problem

Discussion on Mechanical Sympathy.

In 23 listsDetails

Performance Java User's Group

For expert Java developers who want to push their systems to the next level

Virtual Machine Meetup 2017

Venue for discussing the latest research and developments in the area of managed language execution.

Media

FOSDEM 2018

FOSDEM 2018 Free Java devroom.

JFokus 2018

The GC edition. Shenandoah, ZGC, Zing, Fibers, Falcon etc.

G1 Garbage Collector in Java 8/9

Kirk Pepperdine.

Extreme Profiling: Digging Into Hotspots

Nitsan Wakart.

Java vs. C Performance

Cliff Click.

Why JNI is slow?

Cliff Click

A Crash Course in Modern Hardware

Cliff Click

Java Profiling from the Ground Up

Nitsan Wakart.

The Illusion of Execution

Nitsan Wakart.

Mythbusting Modern Hardware to Gain 'Mechanical Sympathy'

Martin Thompson.

Designing for Performance

Martin Thompson.

How NOT to Measure Latency

Gil Tene.

JVM Language Summit 2015

JVM Language Summit 2015.

JVM Language Summit 2016

JVM Language Summit 2016.

JVM Language Summit 2017

JVM Language Summit 2017.

Bits of advice for VM writers

Cliff Click.

Understanding Java garbage collection ...

Gil Tene.

Faster Object Arrays

Gil Tene at GOTO Conferences.

Java Memory Model Pragmatics

Aleksey Shipilev.

With GC Solved, What Else Makes a JVM Pause?

John Cuthbertson.

JVM Mechanics

Douglas Hawkins.

Give me 15 minutes and I'll change your view of Linux tracing

Brendan Gregg.

Kernel Recipes 2017: Performance Analysis with BPF

Brendan Gregg.

Shenandoah deep talk

Aleksey Shipilëv slightly-deeper-than-usual Shenandoah talk from Virtual Machine Meetup 2017.

Shenandoah: The Garbage Collector That Could

Aleksey Shipilev - Devoxx 2017/11

Analyzing and Debugging the Java HotSpot VM at the OS Level

Volker Simonis.

Cliff Click podcast 2017/09/16

Programming and Performance Intro.

Cliff Click podcast 2017/09/16

Bugs and Coding Styles.

Cliff Click podcast 2017/09/18

Java vs C/C++.

Cliff Click podcast 2017/09/21

Debugging Data Races.

Cliff Click podcast 2017/09/24

Fast Bytecodes for Funny Languages.

Cliff Click podcast 2017/09/28

Struct of Arrays vs Array of Structs.

Cliff Click podcast 2017/10/04

The 3 Hardest Problems in Programming.

Cliff Click podcast 2017/11/05

Modern Hardware Performance and Cache Lines.

Cliff Click podcast 2017/11/09

Queuing In Practice.

Which technique do programming language parsers and interpreters use?

Cliff Click.

Everything about Stack Traces and Heap Dumps

Andrei Pangin.

Fast and safe production monitoring of JVM with BPF tools

Sasha Goldshtein.

The Future of the Linux Page Cache

Matthew Wilcox.

People

Aleksey Shipilëv

Developing Oracle/Open JDK/Hotspot and other Java-related technologies.

Andrey Breslav

Lead Language Designer of Kotlin @ JetBrains.

Brian Goetz

Java Language Architect at Oracle.

Ben Christensen

Facebook, Netflix, Apple engineering.

Brendan Gregg

Cloud performance, kernel engineer, speaker, author.

Charles Nutter

JRuby guy.

Claes Redestad

Working with OpenJDK stuff @ Oracle.

Cliff Click

Creator of the HotSpot Server Compiler.

In 2 lists

Dave Dice

Senior research scientist in the Scalable Synchronization Research Group within Oracle.

Dávid Karnok

RxJava committer that blogs about advanced RxJava.

Doug Lea

Author of the Java memory model.

Gil Tene

Azul Systems.

Heinz Kabutz

Author of 250+ Java Specialists' Newsletters.

In 2 lists

Ivan Krylov

JVM expert.

Jake Wharton

Square, Google, open source hacker.

John Rose

HotSpot developer.

Jonas Bonér

Founder & CTO of Lightbend.

Lukas Eder

Blogger. Author of JOOQ.

Marcus Lagergren

Java language team alumnus.

Mark Reinhold

Chief Architect, Java Platform Group, Oracle.

Martin Thompson

Pasty faced performance gangster.

Martijn Verburg

Java Champion.

In 2 lists

Kirk Pepperdine

Working in high performance and distributed computing for nearly 20 years.

Safepoints

Where is my safepoint? Nitsan Wakart.

Norman Maurer

Netty developer.

Paul Phillips

Forever undisputed SLOC Scala compiler dev.

Per Liden

Hacking on the HotSpot JVM at Oracle.

Peter Lawrey

Innovative developer of high performance Java systems for competitive advantage.

In 2 lists

Rafael Winterhalter

Author of ByteBuddy.

Richard Warburton

Developer, Speaker, Author.

Richard Startin

Performance Analyst, developer, blogger.

Ron Pressler

Parallel Universe. Leading Fibers and Continuations for the JVM.

Stephen Colebourne

Java Champion. Occasional blogger and speaker. Best known for Joda projects and JSR-310.

Todd L. Montgomery

Ex-CTO, Ex-NASA researcher, network geek, messaging middleware designer.

Stéphane Maldini

Project Reactor Lead @Pivotal.

Stuart Marks

Doctor Deprecator. Java/JDK/OpenJDK developer

Vladimir Ivanov

hacking HotSpot JVM @ Oracle.

Viktor Klang

Deputy CTO at Typesafe Inc.

See category
94

Awesome Rust

rust-unofficial/awesome-rust

A curated list of Rust code and resources.

Fresh★ 60k1833 entriesPushed today
94

Awesome Mac

jaywcjlove/awesome-mac

 This project is dedicated to collecting high-quality macOS software and organizing them systematically by different categories for easy search and use.

Fresh★ 115k1316 entriesPushed today
94

Awesome Python

vinta/awesome-python

The definitive list that answers "I want to do X in Python, which tool should I use?"

Fresh★ 324k504 entriesPushed today
94

Awesome C++

fffaraz/awesome-cpp

A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny things. Inspired by awesome-... stuff.

Fresh★ 74k1358 entriesPushed yesterday
94

Awesome Go

avelino/awesome-go

A curated list of awesome Go frameworks, libraries and software

Fresh★ 186k3119 entriesPushed yesterday
94

Awesome PHP

ziadoz/awesome-php

A curated list of amazingly awesome PHP libraries, resources and shiny things.

Fresh★ 33k87 entriesPushed 2 days ago