- Graph 5
- Distributed 78
- Database 76
- Storage 73
- Transaction 24
- Software Engineering 2
- College 1
- Algorithm 10
- Key-Value 32
- Data Structure 30
- Concurrency Control 10
- New Hardware 42
- File System 30
- Virtualization 11
- Operating System 34
- Network 52
- GPU 3
- Synchronization 5
- SDN 2
- Optimizer 2
- Machine Learning 3
- Transport Protocol 5
- Data Center 9
- Architecture 6
- Scheduling 5
- Hardware 1
- Life 2
- Information Retrieval 1
- Consensus 4
- Distribution 21
- Security 1
- Datebase 1
Graph
- PowerLyra -- Differentiated Graph Computation and Partitioning on Skewed Graphs
- MOSAIC -- Processing a Trillion-Edge Graph on a Single Machine
- X-Stream -- Edge-centric Graph Processing
- GraphChi -- Large-Scale Graph Computation on Just a PC
- Pregel -- A System for Large-Scale Graph Processing
Distributed
- Overload Control and Threading Models for RPC
- Virtual Consensus in Delos
- Asymmetric Replication in Databases
- HTAP Database / HTAP as a Service
- Replication Protocols
- Copysets and Tiered Replication
- CockroachDB - The Resilient Geo-Distributed SQL Database
- Taurus Database - How to be Fast, Available, and Frugal in the Cloud
- The Snowflake Data Warehouse
- Fault Tolerance in Practice
- New Ideas for Key-Value Store and Cache
- New Ideas for Replication
- LogDevice -- A Distributed Data Store for Logs
- SLOG -- Serializable, Low-latency, Geo-replicated Transactions
- Ubiq, Trill and Drizzle
- Machine Learning Systems
- Computation via Dataflow Graph
- Bookkeeper and Distributed Log
- F1 Query -- Declarative Querying at Scale
- Dremel, PoweDril, Mesa and Goods
- MillWheel and Dataflow, Stream Processing
- Failure Detector and Membership Protocol
- Socrates -- The New SQL Server in the Cloud
- Sharding the Shards with Akkio, and Auto-Sharding with Slicer
- Flat Datacenter Storage
- Partition in Database
- Confluo and Chronix
- Redundancy Does Not Imply Fault Tolerance
- IndexFS and LocoFS
- Exploiting Commutativity For Practical Fast Replication
- Database Live Migration, Zephyr and “Cut Me Some Slack”
- Overload Control for Scaling WeChat Microservices
- Building Consistent Transactions with Inconsistent Replication
- Canopy -- An End-to-End Performance Tracing And Analysis System
- Calvin and CalvinFS
- FaSST -- Fast, Scalable and Simple Distributed Transactions
- Fast In-Memory Transaction Processing Using RDMA and HTM
- Sparrow -- Distributed, Low Latency Scheduling
- Firmament -- Fast, Centralized Cluster Scheduling at Scale
- Large-Scale Cluster Management at Google with Borg
- Flexible Paxos and Paxos Quorum Leases
- EPaxos and SDPaxos
- Several Papers about Time and Timestamp
- The FuzzyLog -- A Partially Ordered Shared Log
- Tango and vCorfu -- Tow Papers about Shared Log
- CORFU -- A Shared Log Design for Flash Clusters
- Omid, Reloaded -- Scalable and Highly-Available Transaction Processing
- PolarFS
- HopsFS -- Scaling Hierarchical File System Metadata Using NewSQL Databases
- Amazon Aurora -- On Avoiding Distributed Consensus
- NetChain -- Scale-Free Sub-RTT Coordination
- Just say NO to Paxos Overhead
- The RAMCloud Storage System
- Fast Crash Recovery in RAMCloud
- The Tail at Scale
- Consistency Tradeoffs in Modern Distributed Database System Design
- PacificA -- Replication in Log-Based Distributed Storage Systems
- A Quorum-Based Commit Protocol
- In Search of an Understandable Consensus Algorithm
- Paxos Made Simple
- SLIK -- Scalable Low-Latency Indexes for a Key-Value Store
- Chain Replication
- Viewstamped Replication
- Facebook F4
- Finding a Needle in Haystack
- Mapreduce and Spark
- Megastore -- Providing Scalable, Highly Available Storage for Interactive Services
- Ceph -- A Scalable, High-Performance Distributed File System
- Amazon Aurora -- Design Cloud-Native Relational Databases
- Spanner -- Google’s Globally Distributed Database
- Windows Azure Storage
- PNUTS and Cassandra
- Dynamo -- Amazon’s Highly Available Key-value Store
- Large-scale Incremental Processing Using Distributed Transactions and Notifications
- Chubby and Zookeeper
- Bigtable -- A Distributed Storage System for Structured Data
- The Google File System
- Pregel -- A System for Large-Scale Graph Processing
Database
- PolarDB Serverless
- YugabyteDB -- A Distributed SQL Database
- Database Lock Optimizations
- Deterministic in Database
- Spanner -- Becoming a SQL System
- Storage Engine and Buffer Pool in Umbra
- The SNOW Theorem and Performance-Optimal Read-Only Transactions
- Azure SQL Database Always Encrypted
- Asymmetric Replication in Databases
- Concurrent Updates to Pages with Fixed-Size Rows Using Lock-Free Algorithms
- LSM-Tree Database Storage Engine and Adaptive Caching for LSM-based KVS
- HTAP Database / HTAP as a Service
- Long-lived Transactions Made Less Harmful
- CockroachDB - The Resilient Geo-Distributed SQL Database
- Taurus Database - How to be Fast, Available, and Frugal in the Cloud
- Resumable Online Index Rebuild in SQL Server
- Buffer Pool, Logging, Checkpoints, and Recovery for LeanStore
- Real-time Analytics and Transaction Processing in SAP HANA
- Column Store Indexes
- HTAP with SQL Server
- SLOG -- Serializable, Low-latency, Geo-replicated Transactions
- BTrim – Hybrid In-Memory Database Architecture
- Temporal DBMS in TDSQL and GC of Hyper
- F1 Query -- Declarative Querying at Scale
- Individualized Buffer Tuning, and Automatic Configuration Tuning
- Procella and AnalyticDB, OLAP Database Systems
- Scalable Logging and Wait-Free Logging for Multi-Cores
- Automatically Indexing in Database and the Largest In-memory Search Tree
- Fast and Constant Time Recovery in Database
- X-Engine -- An Optimized Storage Engine
- Socrates -- The New SQL Server in the Cloud
- New Lock free, scalable WAL design of MySQL 8
- Parallel Join Algorithms (Hashing)
- Buffer Pool of Database
- Managing Non-Volatile&Large-Scale Persisten Memory in Database Systems
- Reducing DRAM Footprint with NVM in Facebook
- Scalability of Write-ahead Logging on Multicore and Multisocket Hardware
- Clokc-SI and Write-Snapshot Isolation
- PolarFS
- UpBit -- Scalable In-Memory Updatable Bitmap Indexing
- Memory Checkpoint
- SuRF -- Practical Range Query Filtering with Fast Succinct Tries
- A Height Optimized Trie Index for Main-Memory Database Systems
- Automatic DBMS Tuning Through Large-scale Machine Learning
- Contention-Aware Lock Scheduling
- Tree Indexing on Solid State Drives and LSbM-tree
- Hybrid Garbage Collection for Multi-Version Concurrency Control in SAP HANA
- Amazon Aurora -- On Avoiding Distributed Consensus
- Building a Bw-Tree Takes More Than Just Buzz Words
- High-Performance Concurrency Control Mechanisms for Main-Memory Databases
- Fast Serializable MVCC for Main-Memory Database Systems
- Dependably Fast Multi-Core In-Memory Transactions
- FOEDUS -- OLTP Engine for a Thousand Cores and NVRAM
- Time Traveling Optimistic Concurrency Control
- Relaxed Operator Fusion for In-Memory Databases
- Morsel-Driven Parallelism
- The Volcano Optimizer Generator -- Extensibility and Efficient Search
- Access Path Selection in a Relational Database Management System
- Reducing the Storage Overhead of Main-Memory OLTP Databases
- Speedy Transactions in Multicore In-Memory Databases
- Fast Databases with Fast Durability and Recovery
- Write-Behind Logging
- From ARIES to MARS
- ARIES -- A Transaction Recovery Method
- Storage & Recovery Methods for NVM DB
- An Empirical Evaluation of In-Memory MVCC
- Consistency Tradeoffs in Modern Distributed Database System Design
- Adaptive Radix Tree
- Self-Driving Database Management Systems
- Bridging the Archipelago between Row-Stores and Column-Stores for Hybrid Workloads
- A Critique of ANSI SQL Isolation Levels
- Megastore -- Providing Scalable, Highly Available Storage for Interactive Services
- Amazon Aurora -- Design Cloud-Native Relational Databases
- Anti-Caching -- A New Approach to Database Management System Architecture
- Spanner -- Google’s Globally Distributed Database
- What’s Really New with NewSQL?
Storage
- LogStore -- A Cloud-Native and Multi-Tenant Log Database
- FoundationDB -- A Distributed Unbundled Transactional Key Value Store
- RAID and More
- Start-Time-, Multi-Queue-, Device-Direct- Fair-Queuing
- Facebook's Tectonic Filesystem
- IO Scheduling
- Several Points about Object Store
- Virtual Consensus in Delos
- Can Applications Recover from fsync Failures?
- Copysets and Tiered Replication
- HTAP with SQL Server
- Inverted Files for Text Search Engines
- The Snowflake Data Warehouse
- New Ideas for Key-Value Store and Cache
- New Ideas for Replication
- LogDevice -- A Distributed Data Store for Logs
- Managing Flash Streams
- Buffer, Dentry and Page Cache in File Systems
- Ursa -- Hybrid Block Storage for Cloud-Scale Virtual Disks
- Blizzard and Isotope, Block Storage Systems
- EROFS, WAFL and XFS
- Ubiq, Trill and Drizzle
- Bookkeeper and Distributed Log
- KVell, Splinter and HyperDex, Key-Value Stores
- Automatic Database Tuning with Deep Reinforcement Learning
- Individualized Buffer Tuning, and Automatic Configuration Tuning
- A Cache/Storage Subsystem for Modern Hardware
- Procella and AnalyticDB, OLAP Database Systems
- Scalable Logging and Wait-Free Logging for Multi-Cores
- Fast and Constant Time Recovery in Database
- KV-Store/Storage with Erasure Coding
- Efficient IO with io_uring
- Sharding the Shards with Akkio, and Auto-Sharding with Slicer
- Storage with SMR Disk
- New Lock free, scalable WAL design of MySQL 8
- Flat Datacenter Storage
- Key-Value Caching with Flash
- RIPQ -- Advanced Photo Caching on Flash for Facebook
- Partition in Database
- Confluo and Chronix
- Redundancy Does Not Imply Fault Tolerance
- IndexFS and LocoFS
- Exploiting Commutativity For Practical Fast Replication
- Key-Value Stores with mmap(2)
- Rocksteady and Arachne, Components of RAMCloud
- Scalability of Write-ahead Logging on Multicore and Multisocket Hardware
- Database Live Migration, Zephyr and “Cut Me Some Slack”
- Calvin and CalvinFS
- Page-level Flash Translation Layers
- BAST, FAST and Superblock-Based Hybrid FTLs
- Pocket -- Elastic Ephemeral Storage for Serverless Analytics
- FlashShare -- Punching Through Server Storage Stack
- NVMeDirect -- A User-space I/O Framework
- Optimizing the Block IO Subsystem for Fast Storage Devices
- PolarFS
- Linux Multi-Queue Block Layer
- Flash-based SSDs
- Barrier-Enabled IO Stack for Flash Storage
- LightNVM -- The Linux Open-Channel SSD Subsystem
- Willow -- A User-Programmable SSD
- HopsFS -- Scaling Hierarchical File System Metadata Using NewSQL Databases
- The RAMCloud Storage System
- Fast Crash Recovery in RAMCloud
- Facebook Gorilla
- Log-structured Memory for DRAM-based Storage
- Facebook F4
- Finding a Needle in Haystack
- Ceph -- A Scalable, High-Performance Distributed File System
- Windows Azure Storage
- PNUTS and Cassandra
- Dynamo -- Amazon’s Highly Available Key-value Store
- Bigtable -- A Distributed Storage System for Structured Data
- The Google File System
Transaction
- PolarDB Serverless
- Transaction Optimzations in CockroachDB
- Optimzations of Distributed Txn With TSO
- Distributed Transaction from Research Papers
- Distributed Txn Without Centralized Sequencer/TSO
- Distributed Txn With Centralized Sequencer/TSO
- The SNOW Theorem and Performance-Optimal Read-Only Transactions
- Concurrent Updates to Pages with Fixed-Size Rows Using Lock-Free Algorithms
- Long-lived Transactions Made Less Harmful
- CockroachDB - The Resilient Geo-Distributed SQL Database
- Taurus Database - How to be Fast, Available, and Frugal in the Cloud
- Buffer Pool, Logging, Checkpoints, and Recovery for LeanStore
- Real-time Analytics and Transaction Processing in SAP HANA
- A Cache/Storage Subsystem for Modern Hardware
- X-Engine -- An Optimized Storage Engine
- Clokc-SI and Write-Snapshot Isolation
- Building Consistent Transactions with Inconsistent Replication
- Calvin and CalvinFS
- FaSST -- Fast, Scalable and Simple Distributed Transactions
- Fast In-Memory Transaction Processing Using RDMA and HTM
- Omid, Reloaded -- Scalable and Highly-Available Transaction Processing
- Speedy Transactions in Multicore In-Memory Databases
- ARIES -- A Transaction Recovery Method
- Large-scale Incremental Processing Using Distributed Transactions and Notifications
Software Engineering
College
Algorithm
- Vector Quotient Filters, Chucky and Conditional Cuckoo Filters
- Stacked Filters and Xor Filter
- Many Faces of Hash Function
- Cold Filter, HeavyGuardian, HeavyKeeper and Pyramid Sketch
- Frequency-Counts/Quantile-Sketch over Data Stream
- Cardinality Estimation Algorithms
- Counter, Beyond Atomic-Long
- Several Papers about Load Balancing
- Count Quotient Filter, Persistent Bloom Filter and Morton Filters
- Consistent Hash
Key-Value
- Key-Value Store in Production
- Key-Value Store with New Hardware
- LSM-Tree Database Storage Engine and Adaptive Caching for LSM-based KVS
- Several Papers about KV Stores(3)
- Several Papers about KV Stores(2)
- KVell, Splinter and HyperDex, Key-Value Stores
- The Log-Structured Merge-Bush & the Wacky Continuum
- Faster Key-Value Store and Concurrent Prefix Recovery
- KVS, WAL, Log-Structured Allocator witn NVM
- Key-Value Stores on SSD(2)
- Key-Value Stores on SSD
- GearDB and SLM-DB
- Rocksteady and Arachne, Components of RAMCloud
- Several Papers about KVS
- Several Papers about RDMA KVS
- Write-Optimized and High-Performance Hashing Index Scheme for Persistent Memory
- Path Hashing and SmartCuckoo
- HashKV -- Enabling Efficient Updates in KV Storage via Hashing
- PebblesDB -- Building Key-Value Stores using Fragmented Log-Structured Merge Trees
- WiscKey -- Separating Keys from Values in SSD-conscious Storage
- Dostoevsky -- Better Space-Time Trade-Offs for LSM-Tree
- Monkey -- Optimal Navigable Key-Value Store
- NetCache -- Balancing Key-Value Stores with Fast In-Network Caching
- GPU Key-Value
- SILT -- A Memory-Efficient, High-Performance Key-Value Store
- Anna -- A KVS for any scale
- Full-Stack Architecting to Achieve a Billion
- KV-Direct
- MICA -- A Holistic Approach to Fast In-Memory Key-Value Storage
- MemC3 and libcuckoo
- Masstree and Plam
- SLIK -- Scalable Low-Latency Indexes for a Key-Value Store
Data Structure
- Many Faces of Hash Table
- Fast Architecture Sensitive Tree and Semi-order Skip-List
- Optimizations of LSM-Tree, ElasticBF and Preventing Latency Spikes
- Automatically Indexing in Database and the Largest In-memory Search Tree
- The Log-Structured Merge-Bush & the Wacky Continuum
- Wormhole -- A Fast Ordered Index for In-memory Data Management
- Write-Optimized Dynamic Hashing, and uDepot
- Variants of LSM-Tree, SifrDB, cLSM and TRIAD
- Several Papers about LSM-Tree
- Write-Optimized and High-Performance Hashing Index Scheme for Persistent Memory
- Path Hashing and SmartCuckoo
- Endurable Transient Inconsistency in Byte-Addressable Persistent B+-Tree
- UpBit -- Scalable In-Memory Updatable Bitmap Indexing
- HashKV -- Enabling Efficient Updates in KV Storage via Hashing
- PebblesDB -- Building Key-Value Stores using Fragmented Log-Structured Merge Trees
- WiscKey -- Separating Keys from Values in SSD-conscious Storage
- Dostoevsky -- Better Space-Time Trade-Offs for LSM-Tree
- Cuckoo Filter and Cuckoo Switch
- SuRF -- Practical Range Query Filtering with Fast Succinct Tries
- Many Tries
- A Height Optimized Trie Index for Main-Memory Database Systems
- Tree Indexing on Solid State Drives and LSbM-tree
- Many B-trees
- Building a Bw-Tree Takes More Than Just Buzz Words
- BzTree -- A High-Performance Latch-free Range Index for Non-Volatile Memory
- TinyLFU -- A Highly Efficient Cache Admission Policy
- MICA -- A Holistic Approach to Fast In-Memory Key-Value Storage
- MemC3 and libcuckoo
- Masstree and Plam
- Adaptive Radix Tree
Concurrency Control
- Temporal DBMS in TDSQL and GC of Hyper
- Hybrid Garbage Collection for Multi-Version Concurrency Control in SAP HANA
- High-Performance Concurrency Control Mechanisms for Main-Memory Databases
- Fast Serializable MVCC for Main-Memory Database Systems
- Dependably Fast Multi-Core In-Memory Transactions
- FOEDUS -- OLTP Engine for a Thousand Cores and NVRAM
- Time Traveling Optimistic Concurrency Control
- Eris -- Coordination-Free Consistent Transactions
- Speedy Transactions in Multicore In-Memory Databases
- An Empirical Evaluation of In-Memory MVCC
New Hardware
- Key-Value Store with New Hardware
- Storage Engine and Buffer Pool in Umbra
- CrossFS and Horae, File Systems for New Hardware
- Non-Volatile Main Memories File Systems(3)
- Managing Flash Streams
- Buffer, Dentry and Page Cache in File Systems
- IO Stack Optimizations for New Hardware
- Non-Volatile Main Memories File Systems(2)
- Non-Volatile Main Memories File Systems
- KVell, Splinter and HyperDex, Key-Value Stores
- SplitFS and Lessons from 10 Years of Ceph Evolution
- SkyBridge and XPC, Secure and Efficient Inter-Process Communication
- SocksDirect -- Datacenter Sockets can be Fast and Compatible
- X-Engine -- An Optimized Storage Engine
- KVS, WAL, Log-Structured Allocator witn NVM
- Key-Value Stores on SSD(2)
- Key-Value Stores on SSD
- Key-Value Stores with mmap(2)
- Write-Optimized Dynamic Hashing, and uDepot
- Managing Non-Volatile&Large-Scale Persisten Memory in Database Systems
- Reducing DRAM Footprint with NVM in Facebook
- FlashShare -- Punching Through Server Storage Stack
- Write-Optimized and High-Performance Hashing Index Scheme for Persistent Memory
- NVMeDirect -- A User-space I/O Framework
- Optimizing the Block IO Subsystem for Fast Storage Devices
- F2FS
- Flash-based SSDs
- Designing a True Direct-Access File System with DevFS
- Barrier-Enabled IO Stack for Flash Storage
- LightNVM -- The Linux Open-Channel SSD Subsystem
- Path Hashing and SmartCuckoo
- Endurable Transient Inconsistency in Byte-Addressable Persistent B+-Tree
- Strata -- A Cross Media File System
- Willow -- A User-Programmable SSD
- NOVA-Fortis -- A Fault-Tolerant NVMM File System
- BzTree -- A High-Performance Latch-free Range Index for Non-Volatile Memory
- Azure Accelerated Networking
- KV-Direct
- NOVA -- A Log-structured File System for Hybrid Volatile/Non-volatile Main Memories
- Write-Behind Logging
- From ARIES to MARS
- Storage & Recovery Methods for NVM DB
File System
- CrossFS and Horae, File Systems for New Hardware
- Non-Volatile Main Memories File Systems(3)
- Managing Flash Streams
- Buffer, Dentry and Page Cache in File Systems
- IO Stack Optimizations for New Hardware
- Non-Volatile Main Memories File Systems(2)
- Non-Volatile Main Memories File Systems
- EROFS, WAFL and XFS
- Data and Metadata Integrity in File Systems(2)
- Data and Metadata Integrity in File Systems
- SplitFS and Lessons from 10 Years of Ceph Evolution
- BTRFS -- The Linux B-Tree Filesystem
- F2FS
- Log-Structured File System
- A Fast File System for Unix
- Designing a True Direct-Access File System with DevFS
- Barrier-Enabled IO Stack for Flash Storage
- RFLUSH -- Rethink the Flush
- Optimistic Crash Consistency
- Consistency Without Ordering
- Application Crash Consistency and Performance with CCFS
- Soft Updates -- A Solution to the Metadata Update Problem in File Systems
- Optimizations of Ext4 File System
- Strata -- A Cross Media File System
- NOVA-Fortis -- A Fault-Tolerant NVMM File System
- Three Papers of the BetrFS
- All File Systems Are Not Created Equal
- Scaling a file system to many cores using an operation log
- Rethink the Sync
- NOVA -- A Log-structured File System for Hybrid Volatile/Non-volatile Main Memories
Virtualization
- Statistics in Orcacle Database
- SkyBridge and XPC, Secure and Efficient Inter-Process Communication
- Google Andromeda
- NetVM and OpenNetVM
- ZygOS -- Achieving Low Tail Latency for Microsecond-scale Networked Tasks
- The IX Operating System
- Arrakis -- The Operating System Is the Control Plane
- Dune Framework
- QEMU, a Fast and Portable Dynamic Translator
- My VM is Lighter (and Safer) than your Container
- Xen and the Art of Virtualization
Operating System
- RAID and More
- Start-Time-, Multi-Queue-, Device-Direct- Fair-Queuing
- IO Scheduling
- Can Applications Recover from fsync Failures?
- Statistics in Orcacle Database
- Data and Metadata Integrity in File Systems(2)
- Some Optimizations of Linux Network Stack
- Data and Metadata Integrity in File Systems
- SkyBridge and XPC, Secure and Efficient Inter-Process Communication
- SocksDirect -- Datacenter Sockets can be Fast and Compatible
- Efficient IO with io_uring
- The eXpress Data Path
- Kyber IO Scheduler of Linux
- Understanding PCIe Performance for End Host Networking
- FlashShare -- Punching Through Server Storage Stack
- LegoOS -- A Disseminated, Distributed OS for Hardware Resource Disaggregation
- Split-Level I/O Scheduling
- Optimizing the Block IO Subsystem for Fast Storage Devices
- Linux Multi-Queue Block Layer
- BFQ IO Scheduler of Linux
- New Syscalls of Linux 4.x
- LightNVM -- The Linux Open-Channel SSD Subsystem
- ZygOS -- Achieving Low Tail Latency for Microsecond-scale Networked Tasks
- The IX Operating System
- Arrakis -- The Operating System Is the Control Plane
- mTCP -- A Highly Scalable User-level TCP Stack
- Scalable Kernel TCP Design and Implementation for Short-Lived Connections
- MegaPipe -- A New Programming Interface for Scalable Network IO
- Dune Framework
- Multiprogramming a 64 kB Computer Safely and Efficiently
- The Multikernel -- A new OS architecture for scalable multicore systems
- Exokernel -- An Operating System Architecture Application-Level Resource Management
- My VM is Lighter (and Safer) than your Container
- Xen and the Art of Virtualization
Network
- Start-Time-, Multi-Queue-, Device-Direct- Fair-Queuing
- Rate Adaptation to Video Streaming
- Fault Tolerance for Partial Network Partitioning
- Overload Control and Threading Models for RPC
- Zero Downtime Release -- Disruption-free Load Balancing
- Akamai DNS -- Providing Authoritative Answers
- Data Center Congestion Control
- Packets Drop in Data Center
- Multi-GPU Communication in Training
- Net Work Session of SOSP-2019
- Some Optimizations of Linux Network Stack
- SocksDirect -- Datacenter Sockets can be Fast and Compatible
- Sharding the Shards with Akkio, and Auto-Sharding with Slicer
- eRPC and RPCValet, Speeding RPC with New Ideas
- Confluo and Chronix
- Shinjuku and Shenango, New Network Stack and Optimizations
- The eXpress Data Path
- Several Papers about Load Balancing
- Several Papers about RDMA KVS
- Ananta, Duet and SilkRoad Load Balancer
- CONGA, Presto, HULA and DRIL Load Balancer
- Several Congestion Control Algorithms
- Copa -- Practical Delay-Based Congestion Control for the Internet
- PCC and PCC-Vivace Congestion Control Algorithms
- Restructuring Endpoint Congestion Control
- Several Papers about Time and Timestamp
- Maglev and Beamer Load Balancer
- The QUIC Transport Protocol
- NDP Transport Protocol
- BBR -- Congestion-Based Congestion Control
- TIMELY -- RTT-based Congestion Control for the Datacenter
- Jupiter Rising -- A Decade of Clos Topologies and Centralized Control
- Three Data Center Network Architectures
- A Scalable, Commodity Data Center Network Architecture
- A Receiver-Driven Low-Latency Transport Protocol
- Datacenter TCP, Deadline Driven Delivery and Deadline-aware Datacenter TCP
- Fine-grained TCP Retransmissions
- Google Andromeda
- Azure Accelerated Networking
- NetCache -- Balancing Key-Value Stores with Fast In-Network Caching
- NetChain -- Scale-Free Sub-RTT Coordination
- The Design and Implementation of Open vSwitch
- OpenFlow -- Enabling Innovation in Campus Networks
- NetVM and OpenNetVM
- Eris -- Coordination-Free Consistent Transactions
- Just say NO to Paxos Overhead
- netmap -- a novel framework for fast packet I/O
- PacketShader -- a GPU-Accelerated Software Router
- mTCP -- A Highly Scalable User-level TCP Stack
- Scalable Kernel TCP Design and Implementation for Short-Lived Connections
- MegaPipe -- A New Programming Interface for Scalable Network IO
- LITE Kernel RDMA Support for Datacenter Applications
GPU
Synchronization
- Counter, Beyond Atomic-Long
- Remote Core Locking and ffwd
- Read-Log-Update and Interval-Based Memory Reclamation
- The ART of Practical Synchronization
- OpLog -- a library for scaling update-heavy data structures
SDN
Optimizer
- The Volcano Optimizer Generator -- Extensibility and Efficient Search
- Access Path Selection in a Relational Database Management System
Machine Learning
- Machine Learning Systems
- Automatic Database Tuning with Deep Reinforcement Learning
- Automatic DBMS Tuning Through Large-scale Machine Learning
Transport Protocol
- The QUIC Transport Protocol
- NDP Transport Protocol
- A Receiver-Driven Low-Latency Transport Protocol
- Datacenter TCP, Deadline Driven Delivery and Deadline-aware Datacenter TCP
- Fine-grained TCP Retransmissions
Data Center
- Packets Drop in Data Center
- NDP Transport Protocol
- TIMELY -- RTT-based Congestion Control for the Datacenter
- Jupiter Rising -- A Decade of Clos Topologies and Centralized Control
- Three Data Center Network Architectures
- A Scalable, Commodity Data Center Network Architecture
- A Receiver-Driven Low-Latency Transport Protocol
- Datacenter TCP, Deadline Driven Delivery and Deadline-aware Datacenter TCP
- Fine-grained TCP Retransmissions
Architecture
- Perceptron Branch Predictor and More
- The IBM z15 High Frequency Mainframe Branch Predictor
- GPPM, L-TAGE and Perceptron-based Branch Predictors
- Tow-Level Branch Predictor and its Optimizations
- DianNao, DaDianNao and PuDianNao, Machine Learning Accelerator
- ISA Wars
Scheduling
- Rocksteady and Arachne, Components of RAMCloud
- Sparrow -- Distributed, Low Latency Scheduling
- Firmament -- Fast, Centralized Cluster Scheduling at Scale
- Large-Scale Cluster Management at Google with Borg
- Two Scheduling Methods
Hardware
Life
Information Retrieval
Consensus
- Distributed Consensus Revised
- Scaling Replicated State Machines with Compartmentalization
- Parallel(s) On Paxos/Raft
- Paxos Made Live - An Engineering Perspective
Distribution
- LogStore -- A Cloud-Native and Multi-Tenant Log Database
- PolarDB Serverless
- Transaction Optimzations in CockroachDB
- Optimzations of Distributed Txn With TSO
- Distributed Transaction from Research Papers
- Distributed Txn Without Centralized Sequencer/TSO
- Distributed Txn With Centralized Sequencer/TSO
- FoundationDB -- A Distributed Unbundled Transactional Key Value Store
- YugabyteDB -- A Distributed SQL Database
- Facebook's Tectonic Filesystem
- Analyses and Optimizations for Tail Latency
- Distributed Consensus Revised
- Scaling Replicated State Machines with Compartmentalization
- Optimizations for Tail Latency
- Deterministic in Database
- Several Points about Object Store
- Spanner -- Becoming a SQL System
- Fault Tolerance for Partial Network Partitioning
- The SNOW Theorem and Performance-Optimal Read-Only Transactions
- Parallel(s) On Paxos/Raft
- Paxos Made Live - An Engineering Perspective