~/docs/benchmarks/cross-language
DOCUMENTATION
Cross-Language
Bindings performance comparison
Cross-language benchmarks for KiteDB bindings. Latest run: February 4, 2026. Raw logs live in docs/benchmarks/results/.
Single-File Raw (10k nodes / 50k edges)
| Operation | Rust p50 | Python p50 |
|---|---|---|
| Key lookup (random existing) | 125ns | 208ns |
| 1-hop traversal (out) | 208ns | 458ns |
| Edge exists (random) | 83ns | 167ns |
| Batch write (100 nodes) | 34.08us | 49.71us |
| Batch write (100 edges) | 40.25us | 53.96us |
| Batch write (100 edges + props) | 172.33us | 436.58us |
TypeScript Fluent vs Low-Level (NAPI)
Config: 1k nodes, 5k edges, 1k iterations.
| Operation | Low-level p50 | Fluent p50 | Overhead |
|---|---|---|---|
| Insert (single node + props) | 115.25us | 36.83us | 0.32x |
| Key lookup (get w/ props) | 208ns | 1.63us | 7.81x |
| Key lookup (getRef) | 208ns | 791ns | 3.80x |
| Key lookup (getId) | 208ns | 333ns | 1.60x |
| 1-hop traversal (count) | 1.21us | 5.75us | 4.76x |
| 1-hop traversal (nodes) | 1.21us | 5.83us | 4.83x |
| 1-hop traversal (toArray) | 1.21us | 10.38us | 8.59x |
| Pathfinding BFS (depth 5) | 170.79us | 167.71us | 0.98x |
Vector index benchmarks are published on the vector benchmarks page.
Running Benchmarks
| Command | Description |
|---|---|
cargo run --release --example single_file_raw_bench --no-default-features -- --nodes 10000 --edges 50000 --iterations 10000 | Rust single-file raw benchmark |
python3 benchmark_single_file_raw.py --nodes 10000 --edges 50000 --iterations 10000 | Python single-file raw benchmark |
node --import @oxc-node/core/register benchmark/bench-fluent-vs-lowlevel.ts | TypeScript fluent vs low-level overhead |