zer-bench 1.1.0

Benchmark harness for zer: throughput, accuracy, and competitor-library comparison
[package]
name        = "zer-bench"
version     = "1.1.0"
edition     = "2021"
description = "Benchmark harness for zer: throughput, accuracy, and competitor-library comparison"
license     = "Apache-2.0"
repository  = "https://github.com/ZAL-Analytics/zer"
keywords    = ["entity-resolution", "benchmark", "record-linkage", "deduplication"]
categories  = ["command-line-utilities", "algorithms"]
readme      = "README.md"

[[bin]]
name = "zer-bench"
path = "src/main.rs"

[features]
default = ["collect-pairs"]
cpu            = ["zer/cpu"]
cuda           = ["zer/cuda"]
avx2           = ["zer/avx2"]
vulkan         = ["zer/vulkan"]
judge_cuda     = ["zer-judge/judge_cuda"]
judge_tensorrt = ["zer-judge/judge_tensorrt"]
judge_rocm     = ["zer-judge/judge_rocm"]
judge_directml = ["zer-judge/judge_directml"]
judge_openvino = ["zer-judge/judge_openvino"]
# Print human-readable pipeline stage progress during accuracy runs.
progress       = []
# Print per-phase timing metrics (blocking_ms, compare_ms, etc.) during accuracy runs.
perf-metrics   = []
# Collect all scored pairs after judging for unbiased PR-AUC computation.
# Propagates to zer-pipeline/collect-pairs; incurs allocation cost per run.
collect-pairs  = ["zer-pipeline/collect-pairs"]

[dependencies]
zer          = { path = "../zer",          version = "1.1", features = ["pipeline"] }
zer-core     = { path = "../zer-core",     version = "1.1" }
zer-pipeline = { path = "../zer-pipeline", version = "1.1" }
zer-adapters = { path = "../zer-adapters", version = "1.1" }
zer-judge    = { path = "../zer-judge",    version = "1.1" }

anyhow              = "1"
clap                = { version = "4", features = ["derive", "env"] }
serde               = { version = "1", features = ["derive"] }
serde_json          = "1"
csv                 = "1"
tempfile            = "3"
tokio               = { version = "1", features = ["full"] }
sysinfo             = { workspace = true }