brianfrankcooper / YCSB

Yahoo! Cloud Serving Benchmark
Apache License 2.0
4.94k stars 2.24k forks source link

Why cleanup some threads while running read test? #1664

Open nxxhaha opened 1 year ago

nxxhaha commented 1 year ago

I specific "operationcount=10000000 -threads 32 -target 10000" in workloadc uniform read, but I find parts of threads will be cleanuped after a specific time, that is operationcount./target seconds. Why and how to avoid it?

For example: 2023-02-26 18:30:17:845 10 sec: 67398 operations; 6739.8 current ops/sec; est completion in 24 minutes [READ: Count=67404, Max=25295, Min=36, Avg=4485.32, 90=9855, 99=16543, 99.9=20495, 99.99=23663] …… 2023-02-26 18:46:57:845 1010 sec: 6791560 operations; 2003.6 current ops/sec; est completion in 7 minutes [READ: Count=20035, Max=19199, Min=52, Avg=8007.31, 90=12231, 99=15279, 99.9=17887, 99.99=19199] [CLEANUP: Count=16, Max=1771, Min=19, Avg=403.88, 90=1696, 99=1771, 99.9=1771, 99.99=1771] …… 2023-02-26 18:58:07:845 1680 sec: 8132262 operations; 1623.4 current ops/sec; est completion in 6 minutes [READ: Count=16234, Max=20351, Min=2054, Avg=8687.46, 90=12423, 99=15351, 99.9=17471, 99.99=18671] [CLEANUP: Count=4, Max=54, Min=21, Avg=31.75, 90=54, 99=54, 99.9=54, 99.99=54] …… 2023-02-26 19:10:57:845 2450 sec: 9065169 operations; 1112.2 current ops/sec; est completion in 4 minutes [READ: Count=11122, Max=19487, Min=2360, Avg=10150.11, 90=12591, 99=15079, 99.9=17247, 99.99=19391] [CLEANUP: Count=3, Max=51, Min=19, Avg=31.67, 90=51, 99=51, 99.9=51, 99.99=51]

nxxhaha commented 1 year ago

I suspect operation count is assigned equally to each thread at the beginning, but why time usage varies massively from some threads to others?