Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

please share nomt bench, it was reported on X thread, but not bench provided #2

Open
dzmitry-lahoda opened this issue Jan 15, 2025 · 2 comments

Comments

@dzmitry-lahoda
Copy link

No description provided.

@dedok
Copy link

dedok commented Jan 16, 2025

Hello,

I believe it's in references inside a published paper (https://layerzero.network/publications/QMDB_13Jan2025_v1.0.pdf) [1]. Charts are also inside paper.

Btw when we tested NOMT agains RocksDB we had almost the same result & conclusions, so benches & result look well for me.

[1] -- Copied from the paper:
Reproducing benchmark numbers. thrumdev/nomt#611.

@absolute0kelvin
Copy link
Contributor

We are using this script for NOMT bench

#!/bin/bash -l

# Configuration variables
DB_FOLDER="/mnt/nvme/build/nomt_db2"
BENCH_BIN="/mnt/nvme/build/nomt/benchtop/target/release/benchtop"
BUCKET_SIZE=1610612736
# ACCOUNTS_SIZE: Power of 2
ACCOUNTS_SIZE=32
WORKLOAD_CONCURRENCY=64
COMMIT_CONCURRENCY=64
TIME_LIMIT="600s"

# Environment variables
export RUST_BACKTRACE=1
export NOMT_DB_FOLDER="${DB_FOLDER}"

# Function to run benchmark with given size
run_benchmark() {
    local size=$1
    /usr/bin/time -v "${BENCH_BIN}" run \
        -b nomt \
        -w transfer \
        -s "${size}" \
        -c "${ACCOUNTS_SIZE}" \
        --workload-concurrency "${WORKLOAD_CONCURRENCY}" \
        --commit-concurrency "${COMMIT_CONCURRENCY}" \
        --time-limit "${TIME_LIMIT}"
}

# Initialize the benchmark
/usr/bin/time -v "${BENCH_BIN}" init \
    -b nomt \
    -c "${ACCOUNTS_SIZE}" \
    -w transfer \
    --buckets "${BUCKET_SIZE}"

# Run benchmarks with different block sizes
declare -a sizes=(6250 125000 10000)
for size in "${sizes[@]}"; do
    run_benchmark "${size}"
done

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants