-
Notifications
You must be signed in to change notification settings - Fork 43
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Tuple compression benchmark #3530
Conversation
You have 10k RPS on replace without compression (it is a very small number). At the same time, you have 13k RPS on replace with function insert_bench()
for i = 1, space_size do
test_space:insert({i, tostring(initial_data)})
end
end
insert_rps = space_size / clock.bench(insert_bench)[1]
function full_scan_bench()
test_space:select(nil, {
fullscan = true
})
end
full_scan_rps = space_size / clock.bench(full_scan_bench)[1]
function select_bench()
for i = 1, space_size do
test_space:get(i)
end
end
select_rps = space_size / clock.bench(select_bench)[1]
function replace_bench()
for i = 1, space_size do
test_space:replace({i, tostring(new_data)})
end
end
replace_rps = space_size / clock.bench(replace_bench)[1] |
Thanks a lot! I ran tests on an AArch64 virtual machine (I'm on mac m1). Will try to repeat benchmarks on a physical x64 device. |
I've ran your benchmark on my machine (i5-12400F, 5.6 CPU max GHz, 32GB RAM) using
|
Thanks! |
62364ad
to
80571ce
Compare
This PR adds a benchmark that will be used to measure compression performance for different algorithms. The results will be used to replace current data in this documentation section:
https://www.tarantool.io/en/enterprise_doc/appendix/parameters/#tuple-compression-performance
Here are raw results for the benchmark:
none
:Insert RPS: 11402.200085316
Full scan RPS: 3943688.2334922
Select RPS: 1213900.4075561
Replace RPS: 10804.614238394
Space size: 41168548
zstd
:Insert RPS: 8339.2376595329
Full scan RPS: 345413.83089763
Select RPS: 282008.49348114
Replace RPS: 9087.9631912889
Space size: 21368548
lz4
:Insert RPS: 13818.036744271
Full scan RPS: 1224199.9403503
Select RPS: 682655.13252673
Replace RPS: 13915.025661323
Space size: 25268548
zlib
:Insert RPS: 10582.710660237
Full scan RPS: 138963.73630138
Select RPS: 127156.35077488
Replace RPS: 10350.445266105
Space size: 20768548
The strange thing is that the
Select RPS / Replace RPS
ratio in my benchmark is much higher than in the current docs:https://www.tarantool.io/en/enterprise_doc/appendix/parameters/#tuple-compression-performance
For example, for
lz4
:What reasons might cause such a difference?