mirror of
https://github.com/scylladb/scylladb.git
synced 2026-06-01 04:26:48 +00:00
Based on perf_simple_query, just bashes data into CL using normal distribution min/max data chunk size, allowing direct freeing of segments, _but_ delayed by a normal dist as well, to "simulate" secondary delay in data persistance. Needs more stuff. Some baseline measurements on master: --min-flush-delay-in-ms 10 --max-flush-delay-in-ms 200 --commitlog-use-hard-size-limit true --commitlog-total-space-in-mb 10000 --min-data-size 160 --max-data-size 1024 --smp1 median 2065648.59 tps ( 1.1 allocs/op, 0.0 tasks/op, 1482 insns/op) median absolute deviation: 48752.44 maximum: 2161987.06 minimum: 1984267.90 --min-data-size 256 --max-data-size 16384 median 269385.25 tps ( 2.2 allocs/op, 0.7 tasks/op, 3244 insns/op) median absolute deviation: 15719.13 maximum: 323574.43 minimum: 228206.28 --min-data-size 4096 --max-data-size 61440 median 67734.22 tps ( 6.4 allocs/op, 2.9 tasks/op, 9153 insns/op) median absolute deviation: 2070.93 maximum: 82833.17 minimum: 61473.57 --min-data-size 61440 --max-data-size 1843200 median 2281.37 tps ( 79.7 allocs/op, 43.5 tasks/op, 202963 insns/op) median absolute deviation: 128.87 maximum: 3143.84 minimum: 2140.80 --min-data-size 368640 --max-data-size 6144000 median 679.76 tps (225.5 allocs/op, 116.3 tasks/op, 662700 insns/op) median absolute deviation: 39.30 maximum: 1148.95 minimum: 586.86 Actual throughput obviously meaningless, as it is run on my slow machine, but IPS might be relevant. Note that transaction throughput plummets as we increase median data sizes above ~200k, since we then more or less always end up replacing buffers in every call. Closes #10230