| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- #!/bin/bash
- echo "🚀 PizzaKV No-Pipeline Benchmark Suite"
- echo "========================================"
- echo ""
- # Remove old db to start fresh
- echo "🗑️ Cleaning old data..."
- pkill pizzakv 2>/dev/null
- sleep 1
- rm -f .db
- echo "Starting fresh server..."
- ./pizzakv -redis &
- SERVER_PID=$!
- sleep 2
- echo ""
- echo "📊 Running No-Pipeline Benchmark Tests..."
- echo ""
- # Test 1: Small writes without pipelining
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
- echo "Test 1: Small Writes (100k, 256 bytes, P=1)"
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
- redis-benchmark -h localhost -p 8085 -t SET -n 100000 -c 50 --threads 4 -r 100000 -P 1 -d 256 --csv
- echo ""
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
- echo "Test 2: Small Reads (100k, P=1)"
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
- redis-benchmark -h localhost -p 8085 -t GET -n 100000 -c 50 --threads 4 -r 100000 -P 1 --csv
- echo ""
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
- echo "Test 3: Medium Writes (50k, 1KB, P=1)"
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
- redis-benchmark -h localhost -p 8085 -t SET -n 50000 -c 50 --threads 4 -r 50000 -P 1 -d 1024 --csv
- echo ""
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
- echo "Test 4: Medium Reads (50k, 1KB, P=1)"
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
- redis-benchmark -h localhost -p 8085 -t GET -n 50000 -c 50 --threads 4 -r 50000 -P 1 --csv
- echo ""
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
- echo "Test 5: Large Writes (10k, 10KB, P=1)"
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
- redis-benchmark -h localhost -p 8085 -t SET -n 10000 -c 25 --threads 2 -r 10000 -P 1 -d 10240 --csv
- echo ""
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
- echo "Test 6: Large Reads (10k, 10KB, P=1)"
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
- redis-benchmark -h localhost -p 8085 -t GET -n 10000 -c 25 --threads 2 -r 10000 -P 1 --csv
- echo ""
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
- echo "Test 7: Mixed Workload (50k each, P=1)"
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
- redis-benchmark -h localhost -p 8085 -t SET,GET -n 50000 -c 50 --threads 4 -r 100000 -P 1 --csv
- echo ""
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
- echo "Test 8: High Concurrency (100k, 100 clients, P=1)"
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
- redis-benchmark -h localhost -p 8085 -t GET -n 100000 -c 100 --threads 4 -r 100000 -P 1 --csv
- echo ""
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
- echo "Test 9: DELETE Performance (50k, P=1)"
- echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
- redis-benchmark -h localhost -p 8085 -t DEL -n 50000 -c 50 --threads 4 -r 100000 -P 1 --csv
- echo ""
- echo "✅ Benchmark Complete!"
- echo ""
- echo "Checking persistence..."
- ls -lh .db
- echo ""
- echo "Shutting down server..."
- kill $SERVER_PID
- wait $SERVER_PID 2>/dev/null
|