#!/bin/bash
-nb_lines=$[$1 + 3]
-head -n $nb_lines chord100000.xml > tmp_depl.xml
+# This script runs Chord with the specified number of nodes.
+# Usage: ./run_chord nb_nodes
+# The platform file is chosen as the smallest platform of the files
+# examples/platforms/cluster_with_*_hosts.xml that contains enough nodes.
+
+# check arguments number
+if [ $# != 1 ]; then
+ echo "Usage: ./run_chord nb_nodes"
+ exit 1
+fi
+
+# pick an appropriate platform file
+if [ $1 -le 100 ]; then
+ platform=100
+else
+ if [ $1 -le 1000 ]; then
+ platform=1000
+ else
+ if [ $1 -le 10000 ]; then
+ platform=10000
+ else
+ if [ $1 -le 100000 ]; then
+ platform=100000
+ else
+ if [ $1 -le 300000 ]; then
+ platform=300000
+ else
+ echo "Cannot find a platform file large enough."
+ exit 2
+ fi
+ fi
+ fi
+ fi
+fi
+
+# set up the deployment file
+nb_lines=$[ $1 + 3]
+head -n $nb_lines chord300000.xml > tmp_depl.xml
echo "</platform>" >> tmp_depl.xml
-./chord -nb_bits=24 -timeout=200 ../../platforms/cluster_with_300000_hosts.xml tmp_depl.xml
-#rm tmp_depl.xml
+
+# run Chord
+./chord -nb_bits=24 -timeout=50 "../../platforms/cluster_with_${platform}_hosts.xml" tmp_depl.xml
+
+# cleanup
+# rm tmp_depl.xml