protocolbuffers / protocolbuffers/protobuf
[benchmark] Request for call-path / fairness review (GLD.SerializerBenchmark)
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 72k
- Forks
- 16.3k
- Avg merge
- 1d 17h
- Merged PRs (30d)
- 140
Description
Hello,
I'm Leonid Ganeline. We maintain an open multi-language serializer benchmark:
https://github.com/leo-gan/GLD.SerializerBenchmark
Your library is included in the suite (language: c, harness name: upb).
Implementation we use:
https://github.com/leo-gan/GLD.SerializerBenchmark/blob/master/c/src/serializers/ser_upb.c
We would value a short review of whether our measurement is fair and idiomatic:
- Does our call pattern match how you recommend using the library in performance-sensitive code?
- Should we change options, encoder/decoder reuse, types, or buffer handling?
- Is there a better API (or a second entry point worth a separate row in the suite)?
Concrete notes or a small PR against that wrapper would help a lot. We are happy to credit you in the docs.
The repo also includes a short Serialization course (101–401). If something important about your design is easy to misstate, a pointer is welcome—we can update the docs ourselves.
Thank you for maintaining this library.
Best regards,
Leonid Ganeline
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading the linked c/src/serializers/ser_upb.c wrapper and the corresponding upb usage in this repository. Compare its call pattern, options, reuse, types, and buffer handling with the library's documented guidance. Done means a concrete fairness assessment and, where needed, a focused wrapper PR or documentation correction.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c, cpp
- Domain
- performance
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100