Figure 4

DPDK-l2fwd (HW)

low-latency/figures/dpdk-l2fwd/hw/pcap/latencies-pre-rate10000-snort-filter.pcap.worst-filtered.pdf.svg

DPDK-l2fwd (simulated)

low-latency/figures/dpdk-l2fwd/hw/simulation/simulation.pdf.svg

DPDK-l2fwd (VM)

low-latency/figures/dpdk-l2fwd/vm/pcap/latencies-pre-rate10000-snort-filter.pcap.worst-filtered.pdf.svg

Steps to reproduce measurements

The setup and experiment execution for the worst-case measurements of DPDK-l2fwd (HW/VM) evaluation is part of the description for Table II.

Steps to reproduce figures

Raw data

Pcaps (DPDK-l2fwd (HW), DPDK-l2fwd (VM))

Evaluation execution

Setup evaluator

# install dependencies
apt install postgresql postgresql-client parallel python3-pip texlive-full zstd
python3 -m pip install pypacker

Generate figures

git clone https://github.com/gallenmu/low-latency /root/low-latency

#decompress pcaps
cd /root/low-latency/measurements
for i in $(find . -iname *.zst); do zstd --rm -d $i; done;

#create hw figure
export MPATH=dpdk-l2fwd
cd /root/low-latency/figures/$MPATH/hw/pcap
su postgres -c "createuser -s root"
dropdb --if-exists root
createdb root
export PGDATABASE=root
for i in /root/low-latency/measurements/$MPATH/hw/pcap/*-pre-rate10000-*.pcap; do /root/low-latency/scripts/pcap-import.sh $i; /root/low-latency/scripts/pcap-analysis.sh $i; done;
python3 /root/low-latency/scripts/pcap-tex-create.py .
for i in *.tex; do lualatex $i; done

#create simulation
cd /root/low-latency/figures/$MPATH/hw/simulation
python3 /root/scripts/interrupt-sim.py
lualatex simulation.tex

#create vm figure
cd /root/low-latency/figures/$MPATH/vm/pcap
su postgres -c "createuser -s root"
dropdb --if-exists root
createdb root
export PGDATABASE=root
for i in /root/low-latency/measurements/$MPATH/vm/pcap/*-pre-rate10000-*.pcap; do /root/low-latency/scripts/pcap-import.sh $i; /root/low-latency/scripts/pcap-analysis.sh $i; done;
python3 /root/low-latency/scripts/pcap-tex-create.py .
for i in *.tex; do lualatex $i; done

Output

The precompiled output files can be found in the respective subfolders of the repository. The files are called latencies-pre-rate10000-dpdk-l2fwd.pcap.worst-filtered.pdf in their respective subfolders.