Performance Profiling in FoundationDB
Talkat FoundationDB Summit 2019 · on Monday, 2019-11-18· at 11:00· Grand Ballroom 8, Marriott Marquis San Diego Marina·
summary
Benchmarks use perf (perf trace -s, perf record, perf report, perf script) to pinpoint a client-side bottleneck where a single networking/library thread consumes ~50% CPU via futex synchronization; splitting threads across multiple client processes restores scalability. Storage work on Redwood replaces a map-backed mutation buffer with an adaptive radix tree to cut key-comparison work and yields 11–15% speed-up, then adds a fast allocator (linked to tcmalloc) to reach 22–28% speed-up. Runtime USDT probes (FDB_TRACE_PROBE) enable low-overhead live metrics and queue/actor timing.
AI-written summary · about
chapters (7)
- 0:00Start
- 1:59Features of Perf
- 2:20Bottleneck Identification
- 7:22Perf Record
- 8:10Memory Comparison
- 11:01Micro Benchmark
- 17:43Use Cases for the Perf Tool
related talks
06mLightning Talk: Performance Testing of FoundationDB using TPC-C
22mSolving Everyday Data Problems with FoundationDB
26mRunning FDB at scale at Wavefront
34mFoundationDB, the Black Knight
26mFuture of FoundationDB Storage Engines
37mTechnical Overview of FoundationDB
46mFoundationDB: The Best-Kept Secret of New Distributed Architectures!
37mMoving on from RocksDB to something FASTER
