#!/bin/sh
# TODO: run this script from CK root or build directory
EXE="$(find . -name tile_example_fmha_bwd -type f | head -n 1)"
VALID=0

for prec in "bf16" ; do
for perm in 0 ; do
for hdim in 128 ; do

nhead=$((2048 / $hdim))     # follow fav2 setup
$EXE -prec=$prec -b=4 -h=$nhead -d=$hdim -s=4096   -iperm=$perm -operm=$perm -kname=1         -bwd_v3=1 -v3_bf16_cvt=2 -v=$VALID ; sleep 3
# $EXE -prec=$prec -b=4 -h=$nhead -d=$hdim -s=4096   -iperm=$perm -operm=$perm -kname=1 -mask=1 -bwd_v3=1 -v3_bf16_cvt=2 -v=$VALID ; sleep 3
$EXE -prec=$prec -b=4 -h=$nhead -d=$hdim -s=4096   -iperm=$perm -operm=$perm -kname=1         -bwd_v3=1 -v3_atomic_fp32=0 -v3_bf16_cvt=2 -v=$VALID ; sleep 3
# $EXE -prec=$prec -b=4 -h=$nhead -d=$hdim -s=4096   -iperm=$perm -operm=$perm -kname=1 -mask=1 -bwd_v3=1 -v3_atomic_fp32=0 -v3_bf16_cvt=2 -v=$VALID ; sleep 3
$EXE -prec=$prec -b=2 -h=$nhead -d=$hdim -s=8192   -iperm=$perm -operm=$perm -kname=1         -bwd_v3=1 -v3_bf16_cvt=2 -v=$VALID ; sleep 3
# $EXE -prec=$prec -b=2 -h=$nhead -d=$hdim -s=8192   -iperm=$perm -operm=$perm -kname=1 -mask=1 -bwd_v3=1 -v3_bf16_cvt=2 -v=$VALID ; sleep 3
$EXE -prec=$prec -b=2 -h=$nhead -d=$hdim -s=8192   -iperm=$perm -operm=$perm -kname=1         -bwd_v3=1 -v3_atomic_fp32=0 -v3_bf16_cvt=2 -v=$VALID ; sleep 3
# $EXE -prec=$prec -b=2 -h=$nhead -d=$hdim -s=8192   -iperm=$perm -operm=$perm -kname=1 -mask=1 -bwd_v3=1 -v3_atomic_fp32=0 -v3_bf16_cvt=2 -v=$VALID ; sleep 3
$EXE -prec=$prec -b=1 -h=$nhead -d=$hdim -s=16384  -iperm=$perm -operm=$perm -kname=1         -bwd_v3=1 -v3_bf16_cvt=2 -v=$VALID ; sleep 3
# $EXE -prec=$prec -b=1 -h=$nhead -d=$hdim -s=16384   -iperm=$perm -operm=$perm -kname=1 -mask=1 -bwd_v3=1 -v3_bf16_cvt=2 -v=$VALID ; sleep 3
$EXE -prec=$prec -b=1 -h=$nhead -d=$hdim -s=16384   -iperm=$perm -operm=$perm -kname=1         -bwd_v3=1 -v3_atomic_fp32=0 -v3_bf16_cvt=2 -v=$VALID ; sleep 3
# $EXE -prec=$prec -b=1 -h=$nhead -d=$hdim -s=16384   -iperm=$perm -operm=$perm -kname=1 -mask=1 -bwd_v3=1 -v3_atomic_fp32=0 -v3_bf16_cvt=2 -v=$VALID ; sleep 3
$EXE -prec=$prec -b=1 -h=$nhead -d=$hdim -s=32768  -iperm=$perm -operm=$perm -kname=1         -bwd_v3=1 -v3_bf16_cvt=2 -v=$VALID ; sleep 3
# $EXE -prec=$prec -b=1 -h=$nhead -d=$hdim -s=32768   -iperm=$perm -operm=$perm -kname=1 -mask=1 -bwd_v3=1 -v3_bf16_cvt=2 -v=$VALID ; sleep 3
$EXE -prec=$prec -b=1 -h=$nhead -d=$hdim -s=32768   -iperm=$perm -operm=$perm -kname=1         -bwd_v3=1 -v3_atomic_fp32=0 -v3_bf16_cvt=2 -v=$VALID ; sleep 3
# $EXE -prec=$prec -b=1 -h=$nhead -d=$hdim -s=32768   -iperm=$perm -operm=$perm -kname=1 -mask=1 -bwd_v3=1 -v3_atomic_fp32=0 -v3_bf16_cvt=2 -v=$VALID ; sleep 3
$EXE -prec=$prec -b=1 -h=$nhead -d=$hdim -s=65536  -iperm=$perm -operm=$perm -kname=1         -bwd_v3=1 -v3_bf16_cvt=2 -v=$VALID ; sleep 3
# $EXE -prec=$prec -b=1 -h=$nhead -d=$hdim -s=65536   -iperm=$perm -operm=$perm -kname=1 -mask=1 -bwd_v3=1 -v3_bf16_cvt=2 -v=$VALID ; sleep 3
$EXE -prec=$prec -b=1 -h=$nhead -d=$hdim -s=65536   -iperm=$perm -operm=$perm -kname=1         -bwd_v3=1 -v3_atomic_fp32=0 -v3_bf16_cvt=2 -v=$VALID ; sleep 3
# $EXE -prec=$prec -b=1 -h=$nhead -d=$hdim -s=65536   -iperm=$perm -operm=$perm -kname=1 -mask=1 -bwd_v3=1 -v3_atomic_fp32=0 -v3_bf16_cvt=2 -v=$VALID ; sleep 3

done
done
done
