#!/bin/bash
# ./runall.sh "Title"
# Examples of environment variables to be set:
# PREFIX="haswell-fma-"
# CXX_FLAGS="-mfma"
# CXX=clang++
# Options:
# -up : enforce the recomputation of existing data, and keep best results as a merging strategy
# -s : recompute selected changesets only and keep bests
./run.sh gemm gemm_settings.txt $*
./run.sh lazy_gemm lazy_gemm_settings.txt $*
./run.sh gemv gemv_settings.txt $*
./run.sh gemvt gemv_settings.txt $*
./run.sh trmv_up gemv_square_settings.txt $*
./run.sh trmv_lo gemv_square_settings.txt $*
./run.sh trmv_upt gemv_square_settings.txt $*
./run.sh trmv_lot gemv_square_settings.txt $*
./run.sh llt gemm_square_settings.txt $*
# generate html file
function print_td {
echo '
| ' >> $htmlfile
}
function print_tr {
echo ''"$2"' |
' >> $htmlfile
echo '' >> $htmlfile
print_td s $1 float
print_td d $1 double
print_td c $1 complex
echo '
' >> $htmlfile
}
if [ -n "$PREFIX" ]; then
cp resources/s1.js $PREFIX/
cp resources/s2.js $PREFIX/
htmlfile="$PREFIX/index.html"
cat resources/header.html > $htmlfile
echo ''$1'
' >> $htmlfile
echo '' >> $htmlfile
print_tr gemm 'C += A · B (gemm)'
print_tr lazy_gemm 'C += A · B (gemm lazy)'
print_tr gemv 'y += A · x (gemv)'
print_tr gemvt 'y += AT · x (gemv)'
print_tr trmv_up 'y += U · x (trmv)'
print_tr trmv_upt 'y += UT · x (trmv)'
print_tr trmv_lo 'y += L · x (trmv)'
print_tr trmv_lot 'y += LT · x (trmv)'
print_tr trmv_lot 'L · LT = A (Cholesky,potrf)'
cat resources/footer.html >> $htmlfile
fi