Everything is serialization
summary
Argues that byte representation drives performance and capability, then demonstrates with concrete case studies: parsing graphql (shows why quoted strings force copies and escaping), GPU vertex buffers (fixed-size arrays enable parallelism), and an implemented Rust format tree buff that reorders fields and applies type-aware compression. Benchmarks claim tree buff files are ~17× smaller than message pack and >2× faster, geojson becomes >10× faster and <1/3 the size, and a lossy float mode shrinks files below 1/10.
AI-written summary · about
chapters (11)
- 0:00Start
- 9:38Case Studies
- 19:36Vertex Buffer
- 21:07The Serialization Format
- 22:37Data Dependencies
- 24:33Lossy Compression of Pi
- 27:03Calculating Offsets
- 38:08Variable Length Encoding
- 45:10Delta Compression
- 46:07Ease of Use and Engineering Effort
- 47:12Benchmarks
related talks
27mEvolution of serialization formats and usage in Go
01h 00mKilling C++ Serialization Overhead & Complexity
35mBeyond JSON: Improving inter-app communication
28mRust and Scala, Sitting in a Tree….
16mEmpowering Fearless Data Engineering
23mA Faster Serialization Library Based on Compile-time Reflection and C++ 20
23mRewrite everything in Rust? What we learned from introducing Rust in Strawberry-GraphQL
26mAllocating Less: Really Thin Rust Cloud Apps
