Releases: google/fleetbench
v1.0.5
Performance improvements for parallel_bench. PiperOrigin-RevId: 669349053 Change-Id: Ib690e15ef1bd636b34ceb7d1b6450e33b6690ae9
v1.0.4
Small formatting updates. PiperOrigin-RevId: 656013350 Change-Id: I2ca37a106cbb2936f7c7200ecbbade862a0e7ec0
v1.0.3
Change the format of the libc distribution files such that the overla…
v1.0.2
Support selecting a subset of benchmarks to run. PiperOrigin-RevId: 633404061 Change-Id: I303850996a250ecd199b35ebd1659c375de42434
v1.0.1
Fix warm-up for TCMalloc benchmarks PiperOrigin-RevId: 627838346 Change-Id: I8ff84dd14d3a6d9d4e2e14fcf2a55a03d3d5c4a5
v1.0.0
We're excited to officially release v1.0.0 of our Fleetbench, designed to reflect our in-house production environments. This release marks a significant step forward from our earlier versions and includes:
Benchmark
Fleetbench is meticulously designed to reflect the real world workload in warehouse scale compute with the following list of available benchmarks:
- Protocol Buffer: A data-driven benchmark that synthesize proto schemas based on real world proto characteristics (field count, nesting depth, type distributions, etc) and representative usage patterns.
- Swissmap: Swissmap is a high-performance associated container that are widely used in our fleet. The benchmark exercises core operations, such as lookup, iteration, deletion, etc, for different set size, densities and value sizes.
- TCMalloc: TCMalloc is an efficient memory allocator that manage memory allocation and deallocation. The benchmark stresses the memory allocator with production-like allocation rates, object lifespan for different memory sizes.
- Libc memory operations: Focuses on
memcpy,memmove,memset,memcmpandbcmp, this benchmark is based on each operation's size distribution, mirroring in-house usage. - Compression: Tests Snappy, ZSTD, Brotli, Zlib and Deflate algorithms against synthetic compression corpora that are based on the observed fleet-level compression parameter distributions.
- Hashing algorithms: Evaluates CRC32 and abseil::Hash with representative input size distributions.
- stl::cord: Benchmarks the cord, or rope, a collection of string fragments data structure, based on the observed cord shapes and operation patterns.
Have a Say in Better Benchmarks
We believe the best benchmarks are shaped by real-world use cases and community expertise. That's why your input is essential to the ongoing development of our suite. Please try download and run the benchmarks against your own systems, and share your experience. Let us know what worked well, where you see room for improvement, and any new benchmark scenarios you'd like to see added. Found a bug or have a brilliant idea for a new benchmark? Please submit an issue on our [GitHub repository].(https://github.com/google/fleetbench/issues)
Celebrating Our Contributors
This release wouldn't be possible without the passion and commitment of our amazing contributors. Your insights, code fixes, and dedication to quality make this project truly shine. Thank you!
v0.4.4
Add `BM_InsertManyToEmpty_Hot` that adds elements to the empty set wi…
v0.4.3
Add an option to set the random number generator seed to a specific v…
v0.4.2
Add a "default" option to fleetbench. When --benchmark_filter=default, use the default settings configured by the benchmark registrar. PiperOrigin-RevId: 600796891 Change-Id: I93120113fbb7b4f755547a772c3bce905ded38f1
v0.4.1
No public description PiperOrigin-RevId: 594410429 Change-Id: I15bfdb3d16c72f7a31edeef3006ebeacdf87d2cf