#!/bin/bash # 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 "" >> 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