tikv / rocksdb

A library that provides an embeddable, persistent key-value store for fast storage.
http://rocksdb.org
GNU General Public License v2.0
120 stars 93 forks source link

Optimize RocksDB with Profile-Guided Optimization (PGO) #339

Open zamazan4ik opened 1 year ago

zamazan4ik commented 1 year ago

Hi!

Recently I started RocksDB optimization process with PGO and have interesting results: https://github.com/tikv/tikv/issues/13990#issuecomment-1622020029 I think it would be interesting to consider building RocksDB with PGO as a TiKV dependency.

Further discussions about PGO and RocksDB are here (see the mentioned Discord chat in the discussion - all activity is in Discord): https://groups.google.com/g/rocksdb/c/j9iMFskUnpA

tabokie commented 1 year ago

Looks promising, if you are interested in running it against TiKV, the build script is here: https://github.com/tikv/rust-rocksdb/blob/0a57dd2e2c3d1be9679a9ad6a3ed70dcb4b87eff/librocksdb_sys/build.rs#L128

We can add a feature flag to optionally enable it.

Unfortunately our team doesn't have the bandwidth to test it right now. Will update here if the situation changes.