Evaluate Profile-Guided Optimization on kvrocks
- Dominant language
- C++
- Stars
- 4.4k
- Forks
- 658
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 10
Description
### Search before asking
- [X] I had searched in the [issues](https://github.com/apache/kvrocks/issues) and found no similar issues.
### Motivation
I think Profile-Guided Optimization can improve kvrocks performance. I did a lot of PGO benchmarks on different software (all results are shown [here](https://github.com/zamazan4ik/awesome-pgo/)). The most interesting for kvrocks results probably are RocksDB [results](https://github.com/google/leveldb/issues/1133#issue-1790305434) and Redis [results](https://github.com/redis/redis/issues/12371).
Seems like could be a good thing to try on kvrocks as well.
### Solution
Try to use PGO and/or BOLT. It could be used via `-fprofile-generate`/`-fprofile-use` compiler flags. For further instructions follow GCC or Clang documentation.
### Are you willing to submit a PR?
- [ ] I'm willing to submit a PR!
Contributor guide
No contributing guide indexed for this repository
Research direction
No source file or test is named. Start by reading the GCC or Clang documentation for -fprofile-generate and -fprofile-use, then evaluate PGO and/or BOLT against representative kvrocks workloads. Done means reporting benchmark results and documenting whether a reproducible configuration improves performance.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- databases, performance
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100