You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Efficiently serialize thousands to millions of valuetypes (doubles, ints, etc)
Describe the solution you'd like
Improve loop efficiency as in #5828 . That increased performance 2-5x in my case, saving 100s of milliseconds per request. The rest of my handler takes milliseconds, so protobuf serialization accounts for 50-90% of my microservice's response time.
Better yet, on little endian machines, perform a buffer copy for certain value types, although this might be difficult because C# lacks generics/template-specialization like C++.
Describe alternatives you've considered
n/a
Additional context
Work was started here #5828 but this was closed because the submitter was under the impression these optimizations would be coming soon from some work being done on gRPC. A year later this is still outstanding.
It looks like there is a big rewrite of overlapping parts here #5888 that is about ready to be merged. So any work on this should wait until after that request is merged.
The text was updated successfully, but these errors were encountered:
prat0088
changed the title
[C#] Optimized paths for repeated valuetypes
[C#] Optimized serialization path for RepeatedField<T>
Feb 6, 2020
We triage inactive PRs and issues in order to make it easier to find active work. If this issue should remain active or becomes active again, please add a comment.
This issue is labeled inactive because the last activity was over 90 days ago.
We triage inactive PRs and issues in order to make it easier to find active work. If this issue should remain active or becomes active again, please reopen it.
This issue was closed and archived because there has been no new activity in the 14 days since the inactive label was added.
What language does this apply to?
C# proto3
Describe the problem you are trying to solve.
Efficiently serialize thousands to millions of valuetypes (doubles, ints, etc)
Describe the solution you'd like
Improve loop efficiency as in #5828 . That increased performance 2-5x in my case, saving 100s of milliseconds per request. The rest of my handler takes milliseconds, so protobuf serialization accounts for 50-90% of my microservice's response time.
Better yet, on little endian machines, perform a buffer copy for certain value types, although this might be difficult because C# lacks generics/template-specialization like C++.
Describe alternatives you've considered
n/a
Additional context
Work was started here #5828 but this was closed because the submitter was under the impression these optimizations would be coming soon from some work being done on gRPC. A year later this is still outstanding.
It looks like there is a big rewrite of overlapping parts here #5888 that is about ready to be merged. So any work on this should wait until after that request is merged.
The text was updated successfully, but these errors were encountered: