Add database persistence benchmarks#915
Conversation
|
👋 Hi! I see this is a draft PR. |
5f75dd9 to
bc97c3a
Compare
|
Feel free to rebase on top of #919 and let me know if you see any differences in the benchmarks. |
|
codex summary: Benchmark ResultsPayment Benchmarks
Lower is better. Delta compares the async-branch rerun against the previous saved Criterion results.
Takeaways
|
Benchmark realistic payment and pending-payment persistence workloads across filesystem, SQLite, and optional PostgreSQL stores. Use the async KV-store APIs so the measured paths match the database interfaces used by async persistence.
Run the existing payments benchmark once per configured store backend so filesystem, SQLite, and optional PostgreSQL results are reported under the same payment flow.
|
It would have been nice if async persistence would show a clear performance win here. The store-level smoke tests are useful, but the closest thing to real node load seems to be the payment benchmark, and that does not show a meaningful improvement, putting aside that it is marked as not reliable yet. Does this tell us much about high-load node performance in practice? If not, what would be the next useful benchmark? |
Hmm, note that 'async persistence' means pre and post #919 AFAIU? I.e., it does not refer to LDK's async persistence itself, which we switched to pre-#919. |
Closes #908
Benchmark realistic payment and pending-payment persistence workloads
across filesystem, SQLite, and optional PostgreSQL stores. Use the async
KV-store APIs so the measured paths match the database interfaces used by
async persistence.
Also adds support for different db backends to the current payment benchmark.