High performance data structures in boost
summary
Claim: contiguous layout trumps pointer indirection so typical list and set code runs much slower. Measured numbers show ~160 ms vs ~33 ms (list vs vector) and set ~300 ms. Tools and libraries used: flat_set stores data in a sorted vector giving vectorlike speed, base_collection packs per type into vectors cutting pointer overhead (e.g. ~500 µs down to ~290 µs), boost intrusive and boost pool change allocation/layout, boost lock free offers a lockfree queue, boost heap offers alternative priority queues.
AI-written summary · about
chapters (16)
- 0:00Start
- 0:40Boost C + + Libraries
- 2:07References to Other Talks and Papers
- 3:12Efficient Cache Usage
- 5:15Libraries
- 6:44High-Performance Data Structures in Boost
- 14:42Source Code
- 17:03Boost Container
- 24:10Cache Lines
- 28:53Poly Collection
- 31:05Base Collection
- 32:18Abstract Base Classes
- 34:44Function Collection
- 51:19Boost Pool
- 52:52Boost Lock Free
- 54:34Boost Heap
related talks
01h 05mTaming the performance Beast
01h 14mEfficiency with Algorithms, Performance with Data Structures
01h 00mIntroduction to Hardware Efficiency in Cpp
56mC++ Relocation - How to Achieve Blazing Fast Save and Restore and More!
01h 01mWant fast C++? Know your hardware!
58mOptimizing Binary Search
55mUPDATED: Scalable and Low Latency Lock-free Data Structures in C++
01h 02mBack to Basics: Almost Always Vector
