I'm working on an application that has a fan-out - load generator communicates with the middle tier, which then communicates with leaf nodes. As a baseline, I would like to look at the throughput and end-to-end latency associated with empty gRPC communications. In this specific case, it happens to be a ping-ping-pong-pong (1 leaf node). I know that the latency of a synchronous gRPC ping-pong is ~190 microseconds. So, I should expect to see a ping-ping-pong-pong latency of ~380 microseconds. But, I want to look at the latency associated with various load conditions. I see from a closed loop test that such an "empty-packet" communication system achieves a saturation throughput when there are 100K outstanding requests. This seems like a ridiculously high number of outstanding requests. Also, I would expect 100K outstanding requests to lower achieved throughput, since queuing delays must dominate at this point. If the cost of a ping-ping-pong-pong is 380 microseconds, and assuming that the load generator takes 1 microsecond (say) to send a request to the middle-tier server, I must achieve close to saturation throughput when there are ~380 outstanding requests? That doesn't seem to be true, though.
Therefore, I would like to look at the *number of queued tags*, when there are 100K outstanding requests vs. 380 outstanding requests, to see why such a large number of outstanding requests are necessary to achieve a saturation throughput. Regards, Akshitha Sriraman Ph.D. Candidate Computer Science | University of Michigan, Ann Arbor On Thu, Mar 16, 2017 at 10:19 AM, Craig Tiller <[email protected]> wrote: > What do you mean by size? > > The memory allocated when a CQ is instantiated? > The number of pending tags? The number of queued tags? > > Can you tell me more about your use case: why is such a number interesting? > > > On Thu, Mar 16, 2017, 7:01 AM <[email protected]> wrote: >> >> Hello, >> >> I have a particular case where I'm interested in looking at the size of >> the completion queue at the server. I don't see a public API declared in >> "include/grpc++/impl/codegen/completion_queue.h". >> Is there a way to access queue size from the asynchronous server? >> >> Regards, >> Akshitha >> >> -- >> You received this message because you are subscribed to the Google Groups >> "grpc.io" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> To post to this group, send email to [email protected]. >> Visit this group at https://groups.google.com/group/grpc-io. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/grpc-io/ec8847f0-9b5f-4eeb-a7e6-82667e2bc740%40googlegroups.com. >> For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "grpc.io" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/grpc-io. To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/CANMTm2v7aAQRVF79xfnaTongUuMSqNszHjb80uRcy3zov7D-nQ%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
