Skip to content
Graph docs0.5

Graph I/O benchmarks

Latest stable Based on Graph release 0.5.1

graph-io-benchmark measures CSV, Jackson 2/3 NDJSON, GraphML, and OkIO export/import/round trips over in-memory TinkerGraph and temporary files. The pinned build configuration defines 3 warmups and 5 three-second iterations for main; benchmark state owns temporary resources.

Prerequisites: JDK 21, release commit 3e0fa7cb9e3bc70c2743aeebda2487f3e45e4907, and sufficient temporary disk space. Docker is not required.

Terminal window
./gradlew :graph-io-benchmark:smokeBenchmark --rerun-tasks --console=plain
./gradlew :graph-io-benchmark:benchmark --rerun-tasks --console=plain

The smoke configuration uses sizeName=smoke, 1 warmup, 1 measurement of 200 ms, and representative CSV/Jackson3-OkIO/GraphML-OkIO round trips. It validates wiring only. The full run writes JMH reports below benchmark/graph-io-benchmark/build/reports/benchmarks/. Average ms/op is lower-is-better; compare methods only at the same size and execution model.

The committed 2026-04-18 result includes numeric small-dataset rows and run conditions. It does not justify comparing a suspend outlier with another machine or claiming a serializer wins for remote databases.

Run three full trials, retain JSON, and compare intervals. Warmups and forks address JVM state but not filesystem cache, antivirus, compression, or disk contention. Trial teardown removes temporary directories; after interruption, inspect the module build directory and OS temporary space before rerunning.

If import counts differ, treat it as correctness failure before reading latency. If JSON is absent, inspect the first failing benchmark and teardown log. This workload does not prove remote-driver throughput, encrypted production storage, huge graphs, memory ceilings, or crash recovery. Read graph-io execution model and overview.

These diagrams are loaded directly from README assets published with the 0.5.1 release and pinned to its immutable commit. They describe this manual’s released structure and runtime flows, not later Snapshot changes. Select a preview to open the SVG at the same release commit.

graph-io-benchmark Architecture diagram

Release README: benchmark/graph-io-benchmark/README.md