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 <vibe@mistral.ai>
This commit is contained in:
@@ -99,13 +99,14 @@ This script:
|
|||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
- `./benchmark.sh` - Loopback with no extra latency
|
- `./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)
|
- `./benchmark.sh 100` - Simulate 100ms RTT (WAN-like)
|
||||||
|
|
||||||
### Comparison with rsync
|
### Comparison with rsync
|
||||||
|
|
||||||
```bash
|
```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:
|
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
|
- Runs multiple iterations for reliable averages
|
||||||
- Verifies file integrity (MD5 checksums)
|
- Verifies file integrity (MD5 checksums)
|
||||||
- Reports throughput and speedup ratios
|
- Reports throughput and speedup ratios
|
||||||
|
- **Network simulation**: Supports latency via `tc netem` (requires sudo)
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
- `./compare_rsync.sh` - 100 MB, 3 runs (default)
|
- `./compare_rsync.sh` - 100 MB, 3 runs, no latency
|
||||||
- `./compare_rsync.sh 500` - 500 MB, 3 runs
|
- `./compare_rsync.sh 500` - 500 MB, 3 runs, no latency
|
||||||
- `./compare_rsync.sh 100 5` - 100 MB, 5 runs
|
- `./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.
|
**Note**: Requires `rsync` to be installed on the system.
|
||||||
|
|
||||||
### Comprehensive Benchmark
|
### Comprehensive Benchmark
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
./benchmark_comprehensive.sh [DATA_SIZE_MB] [RUN_COUNT]
|
./benchmark_comprehensive.sh [DATA_SIZE_MB] [RUN_COUNT] [LATENCY_MS]
|
||||||
```
|
```
|
||||||
|
|
||||||
Comprehensive comparison testing:
|
Comprehensive comparison testing:
|
||||||
@@ -136,11 +141,14 @@ Comprehensive comparison testing:
|
|||||||
- Uses file count + size verification (faster than MD5 for large datasets)
|
- Uses file count + size verification (faster than MD5 for large datasets)
|
||||||
- Displays bar chart visualization and speedup analysis
|
- Displays bar chart visualization and speedup analysis
|
||||||
- Identifies best connection count
|
- Identifies best connection count
|
||||||
|
- **Network simulation**: Supports latency via `tc netem` (requires sudo)
|
||||||
|
|
||||||
Examples:
|
Examples:
|
||||||
- `./benchmark_comprehensive.sh` - 100 MB, 3 runs (default)
|
- `./benchmark_comprehensive.sh` - 100 MB, 3 runs, no latency (default)
|
||||||
- `./benchmark_comprehensive.sh 500 1` - 500 MB, single run
|
- `./benchmark_comprehensive.sh 500 1` - 500 MB, single run, no latency
|
||||||
- `./benchmark_comprehensive.sh 200 3` - 200 MB, 3 runs
|
- `./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.
|
**Note**: Requires `rsync`; optionally uses `rclone` if installed.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user