Skip to content
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

Print percentiles in benchmark #2699

Open
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

RomanZavodskikh
Copy link
Member

This is needed to improve the performance impact of this component.

rzavodskikh@ZALANDO-39125:~/skipper$ for i in {1..20}; do go test -benchmem -run=^$ -bench ^BenchmarkGetInflightRequests$ github.com/zalando/skipper/routing |& tee -a output; done
rzavodskikh@ZALANDO-39125:~/skipper$ benchstat output  | grep P99
GetInflightRequests/1_goroutines/P99-16      157.8µ ± 14%
GetInflightRequests/2_goroutines/P99-16      144.3µ ± 17%
GetInflightRequests/3_goroutines/P99-16      145.2µ ±  6%
GetInflightRequests/4_goroutines/P99-16      141.6µ ±  8%
GetInflightRequests/5_goroutines/P99-16      151.7µ ± 15%
GetInflightRequests/6_goroutines/P99-16      141.1µ ±  7%
GetInflightRequests/7_goroutines/P99-16      143.6µ ± 14%
GetInflightRequests/8_goroutines/P99-16      143.9µ ± 12%
GetInflightRequests/12_goroutines/P99-16     145.6µ ± 24%
GetInflightRequests/16_goroutines/P99-16     137.7µ ± 14%
GetInflightRequests/24_goroutines/P99-16     131.5µ ± 11%
GetInflightRequests/32_goroutines/P99-16     140.3µ ±  8%
GetInflightRequests/48_goroutines/P99-16     145.8µ ± 26%
GetInflightRequests/64_goroutines/P99-16     141.1µ ± 28%
GetInflightRequests/128_goroutines/P99-16    143.3µ ± 25%
GetInflightRequests/256_goroutines/P99-16    135.1µ ± 14%
GetInflightRequests/512_goroutines/P99-16    141.0µ ± 18%
GetInflightRequests/768_goroutines/P99-16    137.5µ ± 27%
GetInflightRequests/1024_goroutines/P99-16   141.9µ ± 16%
GetInflightRequests/1536_goroutines/P99-16   131.8µ ± 23%
GetInflightRequests/2048_goroutines/P99-16   146.0µ ± 23%
GetInflightRequests/4096_goroutines/P99-16   148.8µ ± 16%
rzavodskikh@ZALANDO-39125:~/skipper$ 

AlexanderYastrebov and others added 3 commits October 17, 2023 19:05
Make lifo, lifoGroup and fifo filters backed error aware and remove
cleanup from the proxy.

Follow up on #1054, #1086 and #2239
Updates #1238

Signed-off-by: Alexander Yastrebov <alexander.yastrebov@zalando.de>
* separate argument tests from behaviour test
* use eskip to define filter configuration
* use TestFifo prefix for all test names

Signed-off-by: Alexander Yastrebov <alexander.yastrebov@zalando.de>
* feature: filter fifoWithBody that works similar to fifo(), but release deferred until body streaming to client was finished
* fix: fifo() and fifoWithBody() with canceled requests

Both filters did not check for canceled context from request before semaphore.Acquire, see golang/go#63615

Signed-off-by: Sandor Szücs <sandor.szuecs@zalando.de>
This is needed to improve the performance impact of this component.

Signed-off-by: Roman Zavodskikh <roman.zavodskikh@zalando.de>
@@ -72,6 +72,7 @@ require (
github.com/OneOfOne/xxhash v1.2.8 // indirect
github.com/agnivade/levenshtein v1.1.1 // indirect
github.com/armon/go-metrics v0.0.0-20180917152333-f0300d1749da // indirect
github.com/benburkert/pbench v0.0.0-20160623210926-4ec5821845ef // indirect
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

dependency from 2016, do we need this or can we copy a function into our code base?

@@ -93,6 +94,7 @@ require (
github.com/envoyproxy/protoc-gen-validate v1.0.2 // indirect
github.com/felixge/httpsnoop v1.0.3 // indirect
github.com/fsnotify/fsnotify v1.6.0 // indirect
github.com/gavv/monotime v0.0.0-20190418164738-30dba4353424 // indirect
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

dependency from 2019 maybe we can copy a func to our own repository

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants