#!/bin/sh DEFAULT_LOOPBACK_BANDWIDTH="498000000" DEFAULT_LOOPBACK_LATENCY="0.000004" DEFAULT_NETWORK_BANDWIDTH="$((26 * 1024 * 1024))" DEFAULT_NETWORK_LATENCY="0.000005" DEFAULT_NUMPROCS="4" DEFAULT_POWER="100" LOOPBACK_BANDWIDTH="${DEFAULT_LOOPBACK_BANDWIDTH}" LOOPBACK_LATENCY="${DEFAULT_LOOPBACK_LATENCY}" NETWORK_BANDWIDTH="${DEFAULT_NETWORK_BANDWIDTH}" NETWORK_LATENCY="${DEFAULT_NETWORK_LATENCY}" NUMPROCS="${DEFAULT_NUMPROCS}" POWER="${DEFAULT_POWER}" while true; do case "$1" in "-np") NUMPROCS="$2" shift 2 ;; "-bandwidth") NETWORK_BANDWIDTH="$2" shift 2 ;; "-latency") NETWORK_LATENCY="$2" shift 2 ;; *) break ;; esac done EXEC="$1" shift PLATFORMTMP="$(mktemp tmpXXXXXX)" #PLATFORMTMP="pla.xml" cat > ${PLATFORMTMP} < PLATFORMHEAD for (( i=${NUMPROCS}; $i ; i=$i-1 )) do echo " " >> ${PLATFORMTMP} echo " " >> ${PLATFORMTMP} echo " " >> ${PLATFORMTMP} done for (( i=${NUMPROCS}; $i ; i=$i-1 )) do for (( j=${NUMPROCS}; $j ; j=$j-1 )) do if [ $i -eq $j ]; then echo " " >> ${PLATFORMTMP} else echo " " >> ${PLATFORMTMP} fi done done cat >> ${PLATFORMTMP} < PLATFORMFOOT APPLICATIONTMP="$(mktemp tmpXXXXXX)" #APPLICATIONTMP="app.xml" cat > ${APPLICATIONTMP} < APPLICATIONHEAD for (( i=${NUMPROCS}; $i ; i=$i-1 )) do echo " " >> ${APPLICATIONTMP} for ARG in $*; do echo " " >> ${APPLICATIONTMP} done echo " " >> ${APPLICATIONTMP} done for (( i=${NUMPROCS}; $i ; i=$i-1 )) do echo " " >> ${APPLICATIONTMP} echo " " >> ${APPLICATIONTMP} done cat >> ${APPLICATIONTMP} < APPLICATIONFOOT ${EXEC} ${PLATFORMTMP} ${APPLICATIONTMP} rm ${PLATFORMTMP} ${APPLICATIONTMP}