Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: Go bindings to SQLite using wazero (github.com/ncruces)
9 points by ncruces 10 months ago | hide | past | favorite | 3 comments




The readme mentions performance, but where are the performance numbers?


I don't have them at hand, will post them to the wiki when I get a chance.

That said there's 2 aspects to SQLite performance: compute and IO.

For compute, wazero's current compiler is pretty naive, so CPU bound benchmarks will show a significant degradation vs. native. The numbers in [1] are still mostly valid: you should expect a 4x hit compared to native (mattn, less compared to modernc). A new optimizing compiler is being designed, which I expect will make this roughly on par with modernc.

In terms of IO, the biggest performance limitation is the lack of good WAL support. If you're doing something IO bound in rollback journal mode with normal synchronization, performance should be comparable, because it's dominated by the number of fsyncs. But WAL offers better performance in most cases.

1: https://00f.net/2023/01/04/webassembly-benchmark-2023/




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: