Mercurial > hg > aimc
annotate experiments/scripts/cnbh-syllables/feature_generation/run_aimcopy.sh @ 239:97d0f6765763
- Experimental updates.
author | tomwalters |
---|---|
date | Sun, 24 Oct 2010 23:26:09 +0000 |
parents | d961cc31ef69 |
children | 587ab0b1f062 |
rev | line source |
---|---|
tomwalters@54 | 1 #!/bin/bash |
tomwalters@54 | 2 |
tomwalters@54 | 3 # Test for the existence of AIMCopy in the path |
tomwalters@54 | 4 AIMCOPY=`which AIMCopy` |
tomwalters@183 | 5 if [ "$AIMCOPY" == "" ]; then |
tomwalters@54 | 6 echo "Please build AIM-C and make AIMCopy available in the path" |
tomwalters@54 | 7 fi |
tomwalters@54 | 8 |
tomwalters@54 | 9 set -e |
tomwalters@54 | 10 set -u |
tomwalters@54 | 11 |
tomwalters@239 | 12 AIMCOPY_CONFIGURATION_FILE=$1 |
tomwalters@239 | 13 FEATURES_DIR=$2 |
tomwalters@239 | 14 MACHINE_CORES=$3 |
tomwalters@54 | 15 FILE_LIST=feature_generation_script |
tomwalters@54 | 16 |
tomwalters@54 | 17 echo "Splitting data files over cores..." |
tomwalters@54 | 18 total_cores=$(($MACHINE_CORES)) |
tomwalters@54 | 19 echo -n $total_cores |
tomwalters@54 | 20 echo " cores available" |
tomwalters@54 | 21 total_files=`cat $FEATURES_DIR/$FILE_LIST | wc -l | sed 's/ *//'` |
tomwalters@54 | 22 echo -n $total_files |
tomwalters@54 | 23 echo " files to process" |
tomwalters@54 | 24 files_per_core=$(($total_files/$total_cores+1)) |
tomwalters@54 | 25 echo -n $files_per_core |
tomwalters@54 | 26 echo " files per core" |
tomwalters@54 | 27 split -l $files_per_core $FEATURES_DIR/$FILE_LIST $FEATURES_DIR/split_list |
tomwalters@54 | 28 splits=( $(ls $FEATURES_DIR/split_list*)) |
tomwalters@54 | 29 element=0 |
tomwalters@54 | 30 echo -n "Spawning " |
tomwalters@54 | 31 echo -n $total_cores |
tomwalters@54 | 32 echo " tasks..." |
tomwalters@54 | 33 for ((c=1;c<=$MACHINE_CORES;c+=1)); do |
tomwalters@54 | 34 s=${splits[$element]} |
tomwalters@239 | 35 AIMCopy -C $AIMCOPY_CONFIGURATION_FILE -D $FEATURES_DIR/aimcopy_config.out -S $s & |
tomwalters@54 | 36 let element=element+1 |
tomwalters@54 | 37 done |
tomwalters@54 | 38 |
tomwalters@54 | 39 echo "Waiting for tasks to complete..." |
tomwalters@54 | 40 wait |
tomwalters@54 | 41 echo "Done!" |