Hydra 2020
who it's for
distributed systems engineers, database engineers, concurrency researchers, kernel developers, platform engineers, machine learning systems engineers, programming language designers
topics
CRDT text and tree editors; NUMA-aware kernel locks; sharded ledger throughput; PostgreSQL Spanner architecture; off-heap key-value maps; protocol-aware storage recovery; programming language memory models; multi-Raft HTAP replication; debugging data races; permissioned and permissionless Bitcoin designs; sparse inference and pruning for ML; quantized and sparse distributed training
| title | author | length |
|---|---|---|
| CRDTs: The hard parts | Martin Kleppmann | 01h 13m |
Explains concrete failures and fixes for CRDT text and tree editors: shows interleaving anomalies that jumble concurrent inserts (Logoot and LSEQ fail… | ||
| New locks for the old kernel | Alex Kogan | 01h 09m |
Introduces two concrete kernel-ready designs: CNA is a one-word (4‑byte) lock—an MCS variant that keeps handoffs on the same NUMA node, matches MCS at low… | ||
| Scaling distributed ledgers: Achieving arbitrary throughput and sub-second latency | Alberto Sonnino | 01h 12m |
This work claims sharded ledgers can reach arbitrary throughput and sub-second latency by two concrete systems. For cross-shard safety it introduces per-object… | ||
| Extending PostgreSQL to Google Spanner architecture | Karthik Ranganathan | 01h 13m |
YugabyteDB claims to deliver full PostgreSQL compatibility by reusing PostgreSQL upper half while replacing storage with a Spanner-like DocDB that shards… | ||
| Oak: A scalable off-heap allocated key-value map | Anastasia Braginsky | 01h 09m |
A Java key-value map stores keys and values off-heap in preallocated 256MB blocks, exposes a zero-copy API via ephemeral OakBuffers, and uses Unsafe/direct… | ||
| Redundancy does not imply fault tolerance | Aishwarya Ganesan | 01h 12m |
Measured eight popular distributed storage systems by injecting a single-block fault at a time (read corruptions, read/write errors) using a user-level FUSE… | ||
| Programming language memory models: Problems, solutions, and directions | Anton Podkopaev | 01h 11m |
Shows why sequential consistency fails for real hardware with the Dekker's lock example (both critical sections observed on x86 unless fences are inserted) and… | ||
| HTAP made live — from the engineering perspective | Ed Huang | 01h 13m |
Claims a Raft‑based HTAP: TiDB with a multi‑Raft layout plus a columnar replica, TiFlash, that receives Raft logs as a non‑voter/learner and stores column… | ||
| Debugging data races | Cliff Click | 01h 04m |
Covers concrete root causes (load/store reordering, missing memory barriers, double-check and double-read races) and fixes (volatile/atomics, ordering on both… | ||
| Demystifying Bitcoin | Rachid Guerraoui | 01h 11m |
Claims that the core double-payment problem is double-payment is asynchronous and does not require consensus, replaces proof-of-work leaders with a… | ||
| Tissue vs silicone musings on the future of deep learning hardware and software | Nir Shavit | 01h 14m |
Argues current AI hardware is backwards: brains favor huge sparse graphs and locality so need petabyte of memory with small flops rather than tiny‑memory… | ||
| Distributed and concurrent optimization for machine learning | Dan Alistarh | 01h 14m |
Shows concrete compression-and-sync tradeoffs: QSGD 4-bit quantization cuts communicated bits ~8–10x with a theoretical ~2x slowdown in convergence but… | ||
| Multithreading in UI application: When some threads are more equal than others | Dmitry Ivanov | 01h 14m |
Explains why UI code uses a single global read-write lock (IntelliJ model), the real bug class: reentrancy that causes surprising deadlocks in .NET’s lock… | ||
| Efficient and reliable microservices | Oleg Anastasyev | 01h 14m |
Claims embedding Cassandra in the JVM and collocating a custom in‑memory store removes most marshalling, memcache and network RTT costs and yields much lower… | ||
| Erasure Coding at Scale | Maxim Babenko | 01h 14m |
YT runs over 1 EB of data and applies erasure coding to both immutable blobs and append‑only journal chunks, combining Reed‑Solomon (3+3) with write quorum 5… | ||
| Paxos vs Raft: Have we reached consensus on distributed consensus? | Heidi Howard | 01h 13m |
Paper compares Paxos and Raft by creating a raftified Paxos variant and finds the algorithms are identical in the steady-state performance and diverge only in… | ||
| Safe user-level sharing of memory-mapped resources | Michael Scott | 01h 14m |
Hodor implements Intel PKU (protection keys / PKRU) to give user‑level libraries exclusive access to memory‑mapped device and data regions, with a trusted… | ||
| Transactional memory | Maurice Herlihy | 01h 13m |
Overview of transactional memory, showing concrete mechanisms and limits: hardware uses cache coherence with extra bits to implement Intel TSX via… | ||
| Synchronization primitives can be faster with SegmentQueueSynchronizer | Nikita Koval | 01h 14m |
Presents a new synchronization abstraction called SegmentQueueSynchronizer implemented for Kotlin coroutines that starts from a novel semaphore/mutex algorithm… | ||
| Designing distributed systems with TLA+ | Hillel Wayne | 01h 13m |
A practical design walkthrough models an asynchronous upload→worker pipeline in TLA+ (using PlusCal) and exhaustively checks behaviors with the TLC model… | ||
| Wait-free memory reclamation and data structures | Ruslan Nikolaev | 01h 15m |
Presents WFE (Wait-Free Eras) as a universal wait‑free memory reclamation that extends Hazard Eras with a fast-path slow-path get_protected plus helper… | ||
| Interview and Q&A | Cindy Sridharan | 01h 16m |
Distributed systems treat service health as a spectrum not a binary, so operators add health as a spectrum signals (readiness vs liveness) and explicit… | ||
| nothing matches | ||