From 3e5b94ecad59b31b04bd12547e63b58e68d6b52d Mon Sep 17 00:00:00 2001 From: Theo Tappe Date: Wed, 24 Jun 2026 12:50:01 +0200 Subject: [PATCH] Docs: Update README with network simulation details for all benchmarks Added documentation for latency simulation (LAN/WAN) support in all benchmark scripts. Updated examples to show preset profiles (--lan, --wan) and direct latency values. Generated by Mistral Vibe. Co-Authored-By: Mistral Vibe --- README.md | 26 +++++++++++++++++--------- 1 file changed, 17 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 4763579..02e1539 100644 --- a/README.md +++ b/README.md @@ -99,13 +99,14 @@ This script: Examples: - `./benchmark.sh` - Loopback with no extra latency -- `./benchmark.sh 20` - Simulate 20ms RTT (LAN-like) +- `./benchmark.sh 10` - Simulate 10ms RTT (LAN-like) +- `./benchmark.sh 20` - Simulate 20ms RTT (LAN) - `./benchmark.sh 100` - Simulate 100ms RTT (WAN-like) ### Comparison with rsync ```bash -./compare_rsync.sh [DATA_SIZE_MB] [RUN_COUNT] +./compare_rsync.sh [DATA_SIZE_MB] [RUN_COUNT] [LATENCY_MS|--lan|--wan] ``` Compares fastSyncAI performance (4 connections) against rsync and rsync with compression: @@ -114,18 +115,22 @@ Compares fastSyncAI performance (4 connections) against rsync and rsync with com - Runs multiple iterations for reliable averages - Verifies file integrity (MD5 checksums) - Reports throughput and speedup ratios +- **Network simulation**: Supports latency via `tc netem` (requires sudo) Examples: -- `./compare_rsync.sh` - 100 MB, 3 runs (default) -- `./compare_rsync.sh 500` - 500 MB, 3 runs -- `./compare_rsync.sh 100 5` - 100 MB, 5 runs +- `./compare_rsync.sh` - 100 MB, 3 runs, no latency +- `./compare_rsync.sh 500` - 500 MB, 3 runs, no latency +- `./compare_rsync.sh 100 5` - 100 MB, 5 runs, no latency +- `./compare_rsync.sh 100 1 20` - 100 MB, 1 run, 20ms RTT +- `./compare_rsync.sh 100 1 --lan` - 100 MB, 1 run, 10ms RTT (LAN preset) +- `./compare_rsync.sh 100 1 --wan` - 100 MB, 1 run, 100ms RTT (WAN preset) **Note**: Requires `rsync` to be installed on the system. ### Comprehensive Benchmark ```bash -./benchmark_comprehensive.sh [DATA_SIZE_MB] [RUN_COUNT] +./benchmark_comprehensive.sh [DATA_SIZE_MB] [RUN_COUNT] [LATENCY_MS] ``` Comprehensive comparison testing: @@ -136,11 +141,14 @@ Comprehensive comparison testing: - Uses file count + size verification (faster than MD5 for large datasets) - Displays bar chart visualization and speedup analysis - Identifies best connection count +- **Network simulation**: Supports latency via `tc netem` (requires sudo) Examples: -- `./benchmark_comprehensive.sh` - 100 MB, 3 runs (default) -- `./benchmark_comprehensive.sh 500 1` - 500 MB, single run -- `./benchmark_comprehensive.sh 200 3` - 200 MB, 3 runs +- `./benchmark_comprehensive.sh` - 100 MB, 3 runs, no latency (default) +- `./benchmark_comprehensive.sh 500 1` - 500 MB, single run, no latency +- `./benchmark_comprehensive.sh 200 3` - 200 MB, 3 runs, no latency +- `./benchmark_comprehensive.sh 100 1 10` - 100 MB, 1 run, 10ms RTT (LAN) +- `./benchmark_comprehensive.sh 100 1 100` - 100 MB, 1 run, 100ms RTT (WAN) **Note**: Requires `rsync`; optionally uses `rclone` if installed.