#!/bin/bash

. $TEST_ROOT_DIR/run-test-common

set -ex 

if [[ -d "$CNTK_EXTERNAL_TESTDATA_SOURCE_DIRECTORY" ]]; then 
    if [ "$OS" == "Windows_NT" ]; then 
        CNTK_EXTERNAL_TESTDATA_SOURCE_DIRECTORY="$(cygpath -aw $CNTK_EXTERNAL_TESTDATA_SOURCE_DIRECTORY)" 
    fi
    
    ConfigDir="$CNTK_EXTERNAL_TESTDATA_SOURCE_DIRECTORY"/Speech/Models/MA_LSTM_CE
    [[ -d "$ConfigDir" ]]
else
    echo Config not available.
    exit 0 
fi

LogFileName=stderr
Instances=3
NumCPUThreads=$(threadsPerInstance $Instances)

# cntkmpirun <MPI args> <CNTK config file name> <additional CNTK args>
# traceLevel must remain 0 to avoid leaking model configuration to the baseline
cntkmpirun "-n $Instances" cntk.cntk "numCPUThreads=$NumCPUThreads ConfigDir=$ConfigDir speechTrain=[SGD=[ParallelTrain=[parallelizationStartEpoch=2]]] traceLevel=0"

ExitCode=$?
sed 's/^/MPI Rank 0: /' $TEST_RUN_DIR/"$LogFileName"_speechTrain.logrank0
sed 's/^/MPI Rank 1: /' $TEST_RUN_DIR/"$LogFileName"_speechTrain.logrank1
sed 's/^/MPI Rank 2: /' $TEST_RUN_DIR/"$LogFileName"_speechTrain.logrank2
exit $ExitCode

