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

grpc-go performance #872

Closed
junweiyang opened this issue Aug 30, 2016 · 3 comments
Closed

grpc-go performance #872

junweiyang opened this issue Aug 30, 2016 · 3 comments

Comments

@junweiyang
Copy link

https://performance-dot-grpc-testing.appspot.com/explore?dashboard=5760820306771968
it's seems that go is lower than java performance!

@mwitkow
Copy link
Contributor

mwitkow commented Sep 1, 2016

Could be down to golang/protobuf serialization being based on reflection.
Gogo protobuf is a drop-in replacement that uses code-generation for proto serialization.
https://github.com/gogo/protobuf
https://discuss.dgraph.io/t/gogoprotobuf-is-extremely-fast/639

Would be interested in someone re-running these benchmarks with the codegen :)

@pcj
Copy link

pcj commented Sep 2, 2016

In my own informal tests I'm seeing about 20% slower performance than java. However, go is more consistent, probably due to periodic jvm gc runs. Will try to incorporate gogo protobuf in the repo I'm maintaining and see what I come up with...

https://github.com/pubref/rules_protobuf

@dyu
Copy link

dyu commented Feb 25, 2017

Any plans of adding the go results back in the multi-language perf dashboard on http://www.grpc.io/docs/guides/benchmarking.html?

From the earlier results, I was speculating it was go's non-compacting gc that caused the slowdowns.
Hopefully you can post it soon with the go 1.8.0 improvements.

@lock lock bot locked as resolved and limited conversation to collaborators Sep 26, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants