WG21-SG14: The Story So Far
summary
Study group SG14 documents concrete fixes for latency-sensitive C++: exception unwinding incurs measurable costs (observed 6% frame rate drop when forced on), and catching and unwind tables affect binary size and icache; games target cache-friendly containers so flat_map/flat_set are in wording and EASTL is open-sourced; memory strategies use per-frame slabs and relocatable moves to avoid fragmentation; a 5,000 cycles per soldier budget drives design, and removing iterator debug yields ~10,000% associative speedup.
AI-written summary · about
chapters (30)
- 0:00Start
- 5:40Github Repository
- 6:02Monthly Telecoms
- 14:58Run Time Allocation
- 15:20Function Calls
- 15:35Exception Costs
- 16:27Uncaught Exception
- 16:43Exception Handling
- 19:00Ranges for the Standard Library
- 24:56Cost of the Standard Library
- 28:29No Throw Scopes
- 31:45Heap Allocation
- 32:52Fragmentation
- 38:22Inlining and the Virtual Dispatch
- 49:08Interface Similarity
- 51:25The State of Play
- 52:03Raw Storage Iterator
- 53:30Uninitialized Move
- 54:23Significant Design Considerations
- 55:41Do Bi-Directional or Should Bi-Directional Iterators Destroy Objects in Reverse Order
- 59:16The Standard for Non Integer Arithmetic
- 1:03:36Parallelism
- 1:05:46Operator Overloads
- 1:08:07Underflow
- 1:09:12Dealing with Errors Resulting from Overflow and Flush
- 1:10:04Arithmetic Operators Choice
- 1:13:04Pathfinding Failures
- 1:15:22Image Processing
- 1:21:33Aliasing
- 1:21:44Vectors Aliasing
related talks
55mBirth of Study Group 14...
01h 00mMoving Faster: Everyday efficiency in modern C++
57mC++ MythBusters Strike 2
01h 20mBetter Code: Relationships
55mAbusing Your Memory Model for Fun and Profit
01h 06mModern C and What We Can Learn From It
58mMemory and C++ debugging at Electronic Arts
01h 30mTuning C++: Benchmarks, and CPUs, and Compilers! Oh My!
