mbutrovich / tigger

Other
63 stars 1 forks source link

Performance degradation with tigger #1

Open achanda opened 11 months ago

achanda commented 11 months ago

I cloned tigger, built on a debian box and ran it pointing to a postgres database. On running pgbench, I get significantly degraded performance compared to vanilla pgbouncer. Here are some numbers. In this case, regular pgbouncer is on port 5432 and tigger on port 6432, both pointing to the same postgres cluster. I ran the two tests one after the other.

achanda@testbox:~/tigger$ pgbench -h '127.0.0.1' --port '5432' --username 'admin' -c 50 -j 2 -P 60 -T 600 postgres
pgbench (14.6, server 13.12)
starting vacuum...end.
progress: 60.0 s, 4828.1 tps, lat 10.346 ms stddev 1.658
progress: 120.0 s, 4693.1 tps, lat 10.654 ms stddev 1.712
progress: 180.0 s, 4365.3 tps, lat 11.454 ms stddev 1.823
progress: 240.0 s, 4624.2 tps, lat 10.812 ms stddev 1.749
progress: 300.0 s, 4563.5 tps, lat 10.956 ms stddev 1.770
progress: 360.0 s, 4765.3 tps, lat 10.492 ms stddev 1.667
^C
achanda@testbox:~/tigger$ pgbench -h '127.0.0.1' --port '6432' --username 'admin' -c 50 -j 2 -P 60 -T 600 postgres
pgbench (14.6, server 13.12)
starting vacuum...end.
progress: 60.0 s, 1397.6 tps, lat 35.721 ms stddev 6.381
progress: 120.0 s, 1436.4 tps, lat 34.810 ms stddev 5.169
progress: 180.0 s, 1457.8 tps, lat 34.298 ms stddev 4.773
progress: 240.0 s, 1426.1 tps, lat 35.060 ms stddev 18.077
progress: 300.0 s, 1441.1 tps, lat 34.695 ms stddev 6.159
progress: 360.0 s, 1297.1 tps, lat 38.545 ms stddev 6.918
^C

I see a lot of Not using BPF fast path because the pool is 0 in tigger logs. What am I doing wrong?

pinaraf commented 10 months ago

From a quick digging of the source code, you must set the bpf_pool_size configuration option. Not sure why it's split that way.