A Rust Application Which Serves UDP Server to Calculate Frequency Moment Estimator using AMS (Alon Matias Szegedy) Algorithm
cargo run --release -- 0.0.0.0:9000python main.py \
--host 127.0.0.1 \
--port 9000 \
--n 1000000 \
--interval-us 1000000 \
--mode full \
--reps 14 \
--seed 42 \
--file ./data/zipf.1.5.txt--n: number of total estimation of requests a single connection will send--interval-us: report response everyinterval-usmicroseconds--mode:fullorpairmode--reps: number of repetitions for each request (in parallel)--seed: random seed for request generation--file: file path for data (integer per line)
The following results were obtained on a machine with Total Cores 24, Total Threads 48, Max Turbo Frequency 3.90 GHz, Processor Base Frequency 2.10 and 32 GB RAM running Ubuntu 22.04.3 LTS.
--n: 100000000--interval-us: 1000000--reps: 14--seed: 42
| Dataset | Millisecond Elapsed | Estimated |
|---|---|---|
| zipf.1.5.txt | 739 | 1589486293 |
| zipf.2.0.txt | 772 | 2239563125 |
| zipf.2.txt | 821 | 3230177652 |
| zipf.3.0.txt | 800 | 5851350882 |
| zipf.4.0.txt | 820 | 6709402549 |
| Dataset | Millisecond Elapsed | Estimated |
|---|---|---|
| zipf.1.5.txt | 5725 | 1137815705 |
| zipf.2.0.txt | 5776 | 2926918202 |
| zipf.2.txt | 5762 | 2884228546 |
| zipf.3.0.txt | 5695 | 5820316682 |
| zipf.4.0.txt | 5560 | 7745408064 |