tests: Make parallel VM start a bit more resource friendly

Wait one second between each kvm start to avoid hitting large number of
processes trying to start in parallel. This allows the VMs to be started
more efficiently for parallel-vm.py runs with large number of VMs.

Signed-off-by: Jouni Malinen <j@w1.fi>
This commit is contained in:
Jouni Malinen 2014-12-21 22:04:54 +02:00
parent b3f4134912
commit 5554fbef46
2 changed files with 11 additions and 1 deletions

View file

@ -192,7 +192,7 @@ def main():
vm = {} vm = {}
for i in range(0, num_servers): for i in range(0, num_servers):
print("\rStarting virtual machine {}/{}".format(i + 1, num_servers)), print("\rStarting virtual machine {}/{}".format(i + 1, num_servers)),
cmd = ['./vm-run.sh', '--timestamp', str(timestamp), cmd = ['./vm-run.sh', '--delay', str(i), '--timestamp', str(timestamp),
'--ext', 'srv.%d' % (i + 1), '--ext', 'srv.%d' % (i + 1),
'-i'] + codecov_args + extra_args '-i'] + codecov_args + extra_args
vm[i] = {} vm[i] = {}

View file

@ -47,6 +47,7 @@ TIMESTAMP=$(date +%s)
DATE=$TIMESTAMP DATE=$TIMESTAMP
CODECOV=no CODECOV=no
TIMEWARP=0 TIMEWARP=0
DELAY=0
CODECOV_DIR= CODECOV_DIR=
while [ "$1" != "" ]; do while [ "$1" != "" ]; do
case $1 in case $1 in
@ -68,6 +69,10 @@ while [ "$1" != "" ]; do
--timewrap ) shift --timewrap ) shift
TIMEWARP=1 TIMEWARP=1
;; ;;
--delay ) shift
DELAY=$1
shift
;;
* ) * )
RUN_TEST_ARGS="$RUN_TEST_ARGS$1 " RUN_TEST_ARGS="$RUN_TEST_ARGS$1 "
shift shift
@ -89,6 +94,11 @@ else
CODECOV=no CODECOV=no
fi fi
if [ $DELAY -gt 0 ]; then
echo "Wait $DELAY seconds before starting VM"
sleep $DELAY
fi
echo "Starting test run in a virtual machine" echo "Starting test run in a virtual machine"
kvm \ kvm \