Details
-
Task
-
Resolution: Fixed
-
P2: Important
-
None
-
None
-
None
-
25
-
287047ec7 (dev), eeb62685d (6.8), 1e5737169 (dev), 94e8bb963 (dev), 5ac0c50ca (6.8), 727b71bd2 (6.8)
-
Foundation Sprint 111, Foundation Sprint 112, Foundation Sprint 113, Foundation Sprint 114
Description
Current benchmark profiling showed that even after improving client streaming (i.e. Writes) BiDirStreaming is still not at speed. Results of a benchmark run with 10k call operations:
grpc/benchmarks/bench_qtgrpcclient ‹benchmark› ./bench_qtgrpcclient --calls 10000 130 ↵ #### Start of QtGrpcClient benchmark #### cpu-arch: x86_64 kernel: linux, 6.9.6-arch1-1 host URI: localhost:65002Finished benchmark: UnaryCall Completed calls: 10000 Total time: 3070133us, 3070133000ns Average time: 307us, 307013ns Finished benchmark: ServerStreaming Completed calls: 10000 Total time: 65659us, 65659315ns Average time: 6us, 6565ns Finished benchmark: ClientStreaming Completed calls: 10000 Total time: 56253us, 56253000ns Average time: 5us, 5625ns Finished benchmark: BidirStreaming Completed calls: 10000 Total time: 2019687us, 2019687915ns Average time: 201us, 201968ns #### End of QtGrpcClient benchmark ####
However just running BiDir Streaming is much faster:
grpc/benchmarks/bench_qtgrpcclient ‹benchmark› ./bench_qtgrpcclient --calls 10000 -B #### Start of QtGrpcClient benchmark #### cpu-arch: x86_64 kernel: linux, 6.9.6-arch1-1 host URI: localhost:65002Finished benchmark: BidirStreaming Completed calls: 10000 Total time: 566508us, 566508749ns Average time: 56us, 56650ns #### End of QtGrpcClient benchmark ####