#!/bin/bash

mkdir -p graphs results
#byte_loop libcall loop rep_4byte rep_8byte rep_byte unrolled_loop vector_loop

#echo "byte_loop"
gcc -g -Wall -m32 -march=native -DMEMSET -lm -mstringop-strategy=byte_loop rdtsc-loops.c -o rdtsc-loops
./rdtsc-loops results/r1.txt
#echo "loop"
gcc -g -Wall -m32 -march=native -DMEMSET -lm -mstringop-strategy=loop rdtsc-loops.c -o rdtsc-loops
./rdtsc-loops results/r2.txt
#echo "unrolled_loop"
gcc -g -Wall -m32 -march=native -DMEMSET -lm -mstringop-strategy=unrolled_loop rdtsc-loops.c -o rdtsc-loops
./rdtsc-loops results/r3.txt
#echo "rep_byte"
gcc -g -Wall -m32 -march=native -DMEMSET -lm -mstringop-strategy=rep_byte rdtsc-loops.c -o rdtsc-loops
./rdtsc-loops results/r4.txt
#echo "rep_4byte"
gcc -g -Wall -m32 -march=native -DMEMSET -lm -mstringop-strategy=rep_4byte rdtsc-loops.c -o rdtsc-loops
./rdtsc-loops results/r5.txt

##echo "rep_8byte"
#gcc -g -Wall -m32 -march=native -DMEMSET -lm -mstringop-strategy=rep_4byte rdtsc-loops.c -o rdtsc-loops
#./rdtsc-loops > results/r6.txt

#echo "vector_loop"
gcc -g -Wall -m32 -march=native -DMEMSET -lm -mstringop-strategy=vector_loop rdtsc-loops.c -o rdtsc-loops
./rdtsc-loops results/r7.txt
#echo "libcall"
gcc -g -Wall -m32 -march=native -DMEMSET -lm -mstringop-strategy=libcall rdtsc-loops.c -o rdtsc-loops
./rdtsc-loops results/r8.txt


gcc -g -Wall -lgd -lm -DIS32BIT graph.c -o graph
./graph

gcc -g -Wall -O3 -march=amdfam10 -DMAX_SIZE=8192 -DIS32BIT winning-combo4.c -o winning-combo4
echo "memset32"
./winning-combo4

mv results results-memset32
mv graphs graphs-memset32

