Skip to content

Abbreviations

The short forms that turn up in concurrency books and documentation. Each has a source; an abbreviation we could not find a source for is left out rather than guessed at.

Short form Stands for Concept Source
ABA the A → B → A sequence of values behind the ABA problem (not an acronym) ABA problem source ↗
ACID atomicity, consistency, isolation, durability — the guarantees of a database transaction Consistency models source ↗
BASE basically available, soft state, eventually consistent — the usual contrast with ACID Consistency models source ↗
CAS compare-and-swap Compare-and-swap source ↗
CSP communicating sequential processes Communicating sequential processes source ↗
EDF earliest deadline first Earliest deadline first source ↗
FIFO first in, first out — the order a channel or queue delivers in Channel source ↗
futex fast user-space mutex Futex source ↗
GCD Grand Central Dispatch, Apple's task-queue concurrency library Thread pool and executor source ↗
GIL global interpreter lock Global interpreter lock source ↗
GPGPU general-purpose computing on graphics processing units GPU computing source ↗
IOCP I/O completion port, Windows' mechanism for asynchronous I/O I/O multiplexing source ↗
IPC inter-process communication (in CPU performance, the same letters also mean instructions per cycle) Inter-process communication source ↗
M:N M user-level threads scheduled onto N operating-system threads Green threads and M:N scheduling source ↗
MPI Message Passing Interface MPI source ↗
MPSC multi-producer, single-consumer — the shape of Rust's std::sync::mpsc channel; SPSC and MPMC are the other shapes Channel source ↗
MVCC multi-version concurrency control Multi-version concurrency control source ↗
NIO New I/O, Java's buffer-and-channel I/O API (java.nio), which includes non-blocking I/O I/O multiplexing source ↗
NTP Network Time Protocol Clock skew and drift source ↗
NUMA non-uniform memory access NUMA source ↗
PTP Precision Time Protocol Clock skew and drift source ↗
RAII resource acquisition is initialization — the idiom behind scoped lock guards Scoped locking source ↗
RCU read-copy-update Read-copy-update source ↗
RMS rate-monotonic scheduling Rate-monotonic scheduling source ↗
RPC remote procedure call (RMI, remote method invocation, is Java's object-oriented form) Remote procedure call source ↗
SIMD single instruction, multiple data SIMD source ↗
SMT simultaneous multithreading (Intel's brand name for it is Hyper-Threading) Simultaneous multithreading source ↗
STM software transactional memory Transactional memory source ↗
TLS thread-local storage (not to be confused with Transport Layer Security) Thread-local storage source ↗
TOCTOU time of check to time of use (also written TOCTTOU) Time of check to time of use source ↗
TSan ThreadSanitizer Race detector source ↗
TSO total store order, the memory model of x86 processors (x86-TSO) Weak memory models and reordering source ↗
WCET worst-case execution time Worst-case execution time source ↗