Commit 415a9db3 authored by Antoine Kaufmann's avatar Antoine Kaufmann
Browse files

experiments: scripts for scalability experiments

parent ea1e64a1
......@@ -2,10 +2,26 @@ MQNICMOD := $(abspath ../images/mqnic/mqnic.ko)
GUESTS := \
qemu-pair-client \
qemu-pair-client-8-1 \
qemu-pair-client-8-2 \
qemu-pair-client-8-3 \
qemu-pair-client-8-4 \
qemu-pair-client-8-5 \
qemu-pair-client-8-6 \
qemu-pair-client-8-7 \
qemu-pair-client-8-8 \
qemu-pair-server \
gem5-pair-client \
gem5-pair-server-cp \
gem5-pair-client-cp \
gem5-pair-client-8-1 \
gem5-pair-client-8-2 \
gem5-pair-client-8-3 \
gem5-pair-client-8-4 \
gem5-pair-client-8-5 \
gem5-pair-client-8-6 \
gem5-pair-client-8-7 \
gem5-pair-client-8-8 \
qemu-nopaxos-replica-0 \
qemu-nopaxos-replica-1 \
qemu-nopaxos-replica-2 \
......@@ -33,6 +49,11 @@ EXPERIMENTS := \
qemu-ns3-bridge-pair \
qemu-ns3-dumbbell-pair \
gem5-kvm-ns3-dumbbell-pair \
gem5-kvm-corundum-verilator-pair \
gem5-timing-corundum-verilator-pair-udp \
gem5-timing-corundum-verilator-pair-largewin \
gem5-timing-corundum-verilator-pair-16f \
REPLICATION ?= 1
......
#!/bin/bash
source common-functions.sh
init_out gem5-timing-corundum-verilator-switched-1-nocp $1
# then run with timing CPU
run_corundum_verilator a
run_corundum_verilator b
sleep 0.5
run_ns3_dumbbell bridge "a" "b" "--LinkRate=100Mb/s --LinkLatency=100us"
run_gem5 a a build/qemu-pair-server.tar TimingSimpleCPU server "--cosim-sync"
run_gem5 b b build/gem5-pair-client.tar TimingSimpleCPU client "--cosim-sync"
client_pid=$!
wait $client_pid
cleanup
#!/bin/bash
source common-functions.sh
init_out gem5-timing-corundum-verilator-switched-8-nocp $1
run_corundum_verilator a
run_corundum_verilator b
run_corundum_verilator c
run_corundum_verilator d
run_corundum_verilator e
run_corundum_verilator f
run_corundum_verilator g
run_corundum_verilator h
run_corundum_verilator i
sleep 0.5
run_ns3_dumbbell bridge "a" "b c d e f g h i" "--LinkRate=100Mb/s --LinkLatency=0"
run_gem5 a a build/qemu-pair-server.tar TimingSimpleCPU server "--cosim-sync"
client_pids=""
run_gem5 b b build/gem5-pair-client-8-1.tar TimingSimpleCPU client "--cosim-sync"
client_pids="$client_pids $!"
run_gem5 c c build/gem5-pair-client-8-2.tar TimingSimpleCPU client "--cosim-sync"
client_pids="$client_pids $!"
run_gem5 d d build/gem5-pair-client-8-3.tar TimingSimpleCPU client "--cosim-sync"
client_pids="$client_pids $!"
run_gem5 e e build/gem5-pair-client-8-4.tar TimingSimpleCPU client "--cosim-sync"
client_pids="$client_pids $!"
run_gem5 f f build/gem5-pair-client-8-5.tar TimingSimpleCPU client "--cosim-sync"
client_pids="$client_pids $!"
run_gem5 g g build/gem5-pair-client-8-6.tar TimingSimpleCPU client "--cosim-sync"
client_pids="$client_pids $!"
run_gem5 h h build/gem5-pair-client-8-7.tar TimingSimpleCPU client "--cosim-sync"
client_pids="$client_pids $!"
run_gem5 i i build/gem5-pair-client-8-8.tar TimingSimpleCPU client "--cosim-sync"
client_pids="$client_pids $!"
for p in $client_pids; do
wait $p
done
cleanup
#!/bin/bash
source common-functions.sh
init_out qemu-corundum-verilator-switched-1 $1
run_corundum_verilator a
run_corundum_verilator b
sleep 0.5
run_ns3_dumbbell bridge "a" "b" "--LinkRate=100Mb/s --LinkLatency=0"
run_qemu a a build/qemu-pair-server.tar
sleep 10
run_qemu b b build/qemu-pair-client.tar
client_pid=$!
wait $client_pid
cleanup
#!/bin/bash
source common-functions.sh
init_out qemu-corundum-verilator-switched-8 $1
run_corundum_verilator a
run_corundum_verilator b
run_corundum_verilator c
run_corundum_verilator d
run_corundum_verilator e
run_corundum_verilator f
run_corundum_verilator g
run_corundum_verilator h
run_corundum_verilator i
sleep 0.5
run_ns3_dumbbell bridge "a" "b c d e f g h i" "--LinkRate=100Mb/s --LinkLatency=0"
run_qemu a a build/qemu-pair-server.tar
sleep 10
client_pids=""
run_qemu b b build/qemu-pair-client-8-1.tar
client_pids="$client_pids $!"
run_qemu c c build/qemu-pair-client-8-2.tar
client_pids="$client_pids $!"
run_qemu d d build/qemu-pair-client-8-3.tar
client_pids="$client_pids $!"
run_qemu e e build/qemu-pair-client-8-4.tar
client_pids="$client_pids $!"
run_qemu f f build/qemu-pair-client-8-5.tar
client_pids="$client_pids $!"
run_qemu g g build/qemu-pair-client-8-6.tar
client_pids="$client_pids $!"
run_qemu h h build/qemu-pair-client-8-7.tar
client_pids="$client_pids $!"
run_qemu i i build/qemu-pair-client-8-8.tar
client_pids="$client_pids $!"
for p in $client_pids; do
wait $p
done
cleanup
#!/bin/bash
source common-functions.sh
init_out qemu-ns3-nopaxos-verilator $1
run_corundum_verilator c0
run_corundum_verilator r0
run_corundum_verilator r1
run_corundum_verilator r2
sleep 0.5
run_ns3_sequencer nopaxos "c0" "r0 r1 r2"
run_qemu r0 r0 build/qemu-nopaxos-replica-0.tar
sleep 1
run_qemu r1 r1 build/qemu-nopaxos-replica-1.tar
run_qemu r2 r2 build/qemu-nopaxos-replica-2.tar
sleep 1
run_qemu c0 c0 build/qemu-nopaxos-client.tar
client_pid=$!
wait $client_pid
cleanup
#!/bin/bash
insmod mqnic.ko
ip link set dev eth0 up
ip addr add 192.168.64.2/24 dev eth0
sleep 2
iperf -l 1M -w 1M -c 192.168.64.1 -P 2
sleep 2
m5 exit
#!/bin/bash
insmod mqnic.ko
ip link set dev eth0 up
ip addr add 192.168.64.3/24 dev eth0
sleep 2
iperf -l 1M -w 1M -c 192.168.64.1 -P 2
sleep 2
m5 exit
#!/bin/bash
insmod mqnic.ko
ip link set dev eth0 up
ip addr add 192.168.64.4/24 dev eth0
sleep 2
iperf -l 1M -w 1M -c 192.168.64.1 -P 2
sleep 2
m5 exit
#!/bin/bash
insmod mqnic.ko
ip link set dev eth0 up
ip addr add 192.168.64.5/24 dev eth0
sleep 2
iperf -l 1M -w 1M -c 192.168.64.1 -P 2
sleep 2
m5 exit
#!/bin/bash
insmod mqnic.ko
ip link set dev eth0 up
ip addr add 192.168.64.6/24 dev eth0
sleep 2
iperf -l 1M -w 1M -c 192.168.64.1 -P 2
sleep 2
m5 exit
#!/bin/bash
insmod mqnic.ko
ip link set dev eth0 up
ip addr add 192.168.64.7/24 dev eth0
sleep 2
iperf -l 1M -w 1M -c 192.168.64.1 -P 2
sleep 2
m5 exit
#!/bin/bash
insmod mqnic.ko
ip link set dev eth0 up
ip addr add 192.168.64.8/24 dev eth0
sleep 2
iperf -l 1M -w 1M -c 192.168.64.1 -P 2
sleep 2
m5 exit
#!/bin/bash
insmod mqnic.ko
ip link set dev eth0 up
ip addr add 192.168.64.9/24 dev eth0
sleep 2
iperf -l 1M -w 1M -c 192.168.64.1 -P 2
sleep 2
m5 exit
......@@ -3,5 +3,5 @@ insmod mqnic.ko
ip link set dev eth0 up
ip addr add 192.168.64.2/24 dev eth0
sleep 2
iperf -l 1M -w 1M -c 192.168.64.1
iperf -l 1M -w 1M -c 192.168.64.1 -P 16
m5 exit
#!/bin/bash
insmod mqnic.ko
ip link set dev eth0 up
ip addr add 192.168.64.2/24 dev eth0
sleep 2
iperf -l 1M -w 1M -c 192.168.64.1 -P 2
poweroff -f
#!/bin/bash
insmod mqnic.ko
ip link set dev eth0 up
ip addr add 192.168.64.3/24 dev eth0
sleep 2
iperf -l 1M -w 1M -c 192.168.64.1 -P 2
poweroff -f
#!/bin/bash
insmod mqnic.ko
ip link set dev eth0 up
ip addr add 192.168.64.4/24 dev eth0
sleep 2
iperf -l 1M -w 1M -c 192.168.64.1 -P 2
poweroff -f
#!/bin/bash
insmod mqnic.ko
ip link set dev eth0 up
ip addr add 192.168.64.5/24 dev eth0
sleep 2
iperf -l 1M -w 1M -c 192.168.64.1 -P 2
poweroff -f
#!/bin/bash
insmod mqnic.ko
ip link set dev eth0 up
ip addr add 192.168.64.6/24 dev eth0
sleep 2
iperf -l 1M -w 1M -c 192.168.64.1 -P 2
poweroff -f
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment