Skip to content
This repository has been archived by the owner on Jul 11, 2023. It is now read-only.

Performance

Rahul Powar edited this page Jul 27, 2018 · 5 revisions

The following measurements were done on an 8-core Intel(R) Core(TM) i5-8250U CPU @ 1.60GHz, Arch Linux, and ingraind @ 43281a7.

The following command will produce the raw output:

cargo build --release && \
sudo AWS_ACCESS_KEY_ID=x \
     AWS_SECRET_ACCESS_KEY=x \
     AWS_BUCKET=x \
     AWS_INTERVAL=30 \
     DNS_IF=wlp61s0 \
     RUST_BACKTRACE=1 ./target/release/ingraind & sleep 5 \
&& (top -b -d 2 |grep ingraind) >top_log & \
iperf3 -t 10 -b 10M -c localhost > iperf_log \
&& sleep 1 && iperf3 -t 10 -b 100M -c localhost >>iperf_log \
&& sleep 1 && iperf3 -t 10 -b 1000M -c localhost >>iperf_log \
&& sleep 1 && iperf3 -t 10 -b 10000M -c localhost >>iperf_log \
&& pkill top \
&& @ pkill ingraind

Looking through the logs, we can see that CPU use follows bandwidth:

Bandwidth CPU %
10M 1%
100M 4%
1000M 32%
10000M 98%

This is test only measures the TCPv4 throughput of the one process, but gives a good idea about scaling.