#!/bin/bash

#PBS -l select=32
#PBS -q prod
#PBS -A LatticeQCD_aesp_CNDA
#PBS -l walltime=02:00:00
#PBS -N reproBigJob
#PBS -k doe
#PBS -l filesystems=flare
#PBS -l filesystems=home

#export OMP_PROC_BIND=spread
#unset OMP_PLACES


# 56 cores / 6 threads ~9
export OMP_NUM_THREADS=6

export SYCL_PI_LEVEL_ZERO_USE_COPY_ENGINE=1
export SYCL_PI_LEVEL_ZERO_USE_COPY_ENGINE_FOR_D2D_COPY=1
export SYCL_PROGRAM_COMPILE_OPTIONS="-ze-opt-large-register-file"

export GRID_PRINT_ENTIRE_LOG=0
export GRID_CHECKSUM_RECV_BUF=0
export GRID_CHECKSUM_SEND_BUF=0


cd $PBS_O_WORKDIR

source ../source.sh


cp $PBS_NODEFILE nodefile

DIR=reproBigJob.$PBS_JOBID

mkdir -p $DIR
cd $DIR

cp $PBS_NODEFILE nodefile

BINARY=../Test_dwf_mixedcg_prec

echo > pingjob <<EOF
while read node ; 
do
	echo ssh $node killall -HUP Test_dwf_mixedcg_prec
done < nodefile
EOF

CMD="mpiexec -np 384 -ppn 12  -envall --hostfile nodefile \
	     ../gpu_tile.sh \
	     $BINARY --mpi 4.4.4.6 --grid 64.64.64.96  \
		--shm-mpi 0 --comms-overlap --shm 4096 --device-mem 32000 --accelerator-threads 32 --seconds 6000 --log Message "

echo $CMD > command-line
env > environment
$CMD
grep Oops */Grid.stderr.* > failures.$PBS_JOBID

