NOOSChain Nervos SMT Benchmark Utility
This is a sparse Merkle tree benchmark utility for benchmark:state-root-engine and the external SMT vector contract.
It wraps the maintained Rust sparse-merkle-tree crate from the Nervos ecosystem so NOOSChain can evaluate a native authenticated key-value map separately from the production sidecar under external/state-root-sidecar-nervos.
Important:
- The utility currently uses the crate-native Blake2b hasher, so its root is not expected to match the iden3 JavaScript baseline.
- The important first gate is internal determinism: ordered apply and rebuild from final materialized leaves must match.
- Runtime block execution uses
external/state-root-sidecar-nervos.
Run from the repository root:
powershell
npm run build:state-root-sidecar-nervos-benchmark
npm run benchmark:state-root-engineOn Linux/macOS the release binary path is:
bash
external/state-root-sidecar-nervos-tools/target/release/noos-smt-nervos-candidate