Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AMSF2 - Alon Matias-Szegedy Frequency Moment Estimator (F2)

A Rust Application Which Serves UDP Server to Calculate Frequency Moment Estimator using AMS (Alon Matias Szegedy) Algorithm

How to use?

Run UDP Server

cargo run --release -- 0.0.0.0:9000

Test with Python Client

python 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 every interval-us microseconds
  • --mode: full or pair mode
  • --reps: number of repetitions for each request (in parallel)
  • --seed: random seed for request generation
  • --file: file path for data (integer per line)

Results

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

Full Mode

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

Pair-wise Mode

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

About

A Rust Application Which Serves UDP Server to Calculate Frequency Moment Estimator using AMS (Alon Matias Szegedy) Algorithm

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages