Pekka Enberg
c463bab609
perf/throughput: Use connection per transaction in rusqlite benchmark
...
Open a connection per transaction in the rusqlite benchmark so that
we're comparing the same workload with Turso.
2025-10-23 16:28:24 +03:00
pedrocarlo
aabc7b87a4
perf/throughput force sqlite to use fullfsync
2025-10-14 15:50:45 -03:00
Pekka Enberg
d5c49c17c7
perf/throughput: Delete database before benchmark run
...
Let's reduce variance between benchmark runs by starting with an empty
database.
2025-10-07 09:57:08 +03:00
Pekka Enberg
63895dfecd
perf/throughput: Simplify benchmark output to CSV format
...
Remove verbose output from rusqlite benchmark and output only CSV
format: system,threads,batch_size,compute,throughput
This makes it easier to parse and plot benchmark results.
2025-10-01 11:06:27 +03:00
Pekka Enberg
eeb14b25c6
perf/throughput: Replace think time with CPU-bound compute time
...
Replace the sleep-based --think parameter with a --compute parameter
that uses a busy loop to simulate realistic CPU or GPU bound business
logic (e.g., parsing, data aggregation, or ML inference). The compute
time is now specified in microseconds instead of milliseconds for
finer granularity.
2025-10-01 11:06:27 +03:00
pedrocarlo
3c91ae206b
move as many dependencies as possible to workspace to avoid multiple versions of the same dependency
2025-09-15 17:19:36 -03:00
pedrocarlo
cc48fa233b
add perf/throughput/rusqlite to workspace
2025-09-14 18:29:03 -03:00
Pekka Enberg
0fad30a30d
perf/throughput/turso: Async transactions with concurrent mode
...
With `BEGIN CONCURRENT`, we should also take advantage of async
transaction processing to maximize concurrency.
2025-09-13 13:25:16 +03:00
Pekka Enberg
8dc2e738a4
core/throughput: Add per transaction think time support
2025-09-13 13:02:43 +03:00
Pekka Enberg
964dd0cd43
perf: Add simple throughput benchmark
...
This adds a simple throughput benchmark for rusqlite and Turso, allowing
to compare the two, but also MVCC and SQLite transactions.
2025-09-12 07:35:57 +03:00