---
title: "Doc. No.: P4029R1"
date: 2026-02-26
audience: "SG14 Author: Michael Wong"
reply-to:
  - "<fraggamuffin@gmail.com>"
  - "Contributor: SG14"
document: p4029r1
paper-type: proposal
---

In low-latency finance, different threads (e.g., market data ingestion vs. order execution) must communicate without OS-level locks or blocking.

**Ring Buffer (ring_span) (P0059):** Tracked specifically for "Games, Finance, Embedded." A ring buffer (circular buffer) is the backbone of HFT message passing because it operates on a fixed-capacity contiguous memory block, meaning it never allocates memory dynamically after initialization.

**Concurrent Queues (P0260):** Standardizing lock-free and concurrent queues is critical for fast thread-to-thread communication without rolling custom, error-prone atomics.

**Hazard Pointers & RCU:** Slated for C++26 with extensions for C++29, these are essential mechanisms for safely reclaiming memory in lock-free data structures (e.g., order books) without blocking reader threads.

### 4.2 Cache Locality & Memory Layout

Predictable memory access is often more important than algorithmic complexity in low-latency systems.

**Member Layout Control:** SG14 has a long-standing interest in giving developers standard control over struct layout to maximize CPU cache line utilization — including automatic packing, field reordering, and AoS-to-SoA transformations. Previous proposals in this space (P1112, P1847) have either been rejected by EWG or had their applicable portions merged into the C++26 working draft. SG14 considers the problem space still underserved: the merged provisions in C++26 address a subset of the use cases, but fine-grained, portable, zero-overhead layout control for performance-critical structures remains an open need. SG14 encourages new proposals in this area for C++29, potentially informed by reflection capabilities (P2996) and emerging practice in data-oriented design.

**Object Relocation / Trivial Relocatability (P1144 / P2786):** Tracked with interest from multiple constituencies including financial firms. Allows the compiler to use memcpy to move objects in memory rather than calling expensive move constructors, significantly accelerating container reallocations.

### 5. Ongoing Watch List

SG14 maintains a living tracking document of features, issues, defects, and their status across all SG14 domains:

[https://docs.google.com/spreadsheets/d/1JnUJBO72QVURttkKr7gn0_WjP--P0vAne8JBfzbRiy0/](https://docs.google.com/spreadsheets/d/1JnUJBO72QVURttkKr7gn0_WjP--P0vAne8JBfzbRiy0/edit?gid=0#gid=0) [edit?gid=0#gid=0](https://docs.google.com/spreadsheets/d/1JnUJBO72QVURttkKr7gn0_WjP--P0vAne8JBfzbRiy0/edit?gid=0#gid=0)

This spreadsheet reflects the full scope of SG14's interests and is updated as proposals progress through the committee pipeline. Items include freestanding library work (P1642, P2013, P2338, P2407, P2833, P2937, P2976), linear algebra (P1385, P1673), deterministic exceptions (P0709), hive/colony containers (P0447), fixed-capacity data structures (P0843), numerics and fixed-point arithmetic (P0037, P1889), graph data structures (P1709), physical units (P1935), and game developer priorities (P2966).

SG14 encourages proposal authors working in these domains to coordinate with us to ensure low-latency, embedded, and real-time constraints are considered early in the design process.
