Allow automatic test run for lattice

This commit is contained in:
Thomas Preud'homme 2012-02-01 18:18:06 +01:00
parent a5f52a6c58
commit cacde80b30
3 changed files with 65 additions and 5 deletions

2
pipepar/.gitignore vendored
View File

@ -1,5 +1,5 @@
fmr_omp-str_base-prog*
fmr_omp-str_base.txt
lattice
lattice-prog-*
pipeline_template
logs/*

View File

@ -1,14 +1,28 @@
CFLAGS?=-Wall -Wextra
all: fmr_omp-str_base-prog fmr_omp-str_base-prog-fopenmp
all: allfmr
runall: runfmrprog runfmrprog-fopenmp
allfmr: fmr_omp-str_base-prog fmr_omp-str_base-prog-fopenmp
alllattice: lattice-prog-1 lattice-prog-fopenmp-2 lattice-prog-fopenmp-4 lattice-prog-fopenmp-8
runall: runallfmr runalllattice
runallfmr: runfmrprog runfmrprog-fopenmp
runalllattice: runlatticeprog-1 runlatticeprog-fopenmp-2 runlatticeprog-fopenmp-4 runlatticeprog-fopenmp-8
fmr_omp-str_base-%: fmr_omp-str_base.c
gcc $(CFLAGS) $(subst prog,,$*) -o $@ $< -lm
runfmr%: fmr_omp-str_base-%
perf stat -r 10 ./$<
script -c "perf stat -r 10 ./$< input_20.dat" logs/$<-$$(date +%Y-%m-%d_%H-%M-%S).log
rm fmr_omp-str_base-$*.txt
.PHONY: runall runfmr%
lattice-prog-%: lattice.c
NUM=$*;OPT=-$*;gcc $(CFLAGS) -DNB_CORES=$${NUM##*-} $${OPT%-*} -o $@ $<
runlattice%: lattice-%
script -c "perf stat -r 10 ./$< -p 50" logs/$<-$$(date +%Y-%m-%d_%H-%M-%S).log
.PHONY: all allfmr alllattice runall runfmr runfmr% runlattice runlattice%

View File

@ -334,9 +334,55 @@ int compute_metrics(void)
p_matrix[j / AAC_SCE_PROT_PER_CORE_BIT][j % AAC_SCE_PROT_PER_CORE_BIT] = line;
}
#if NB_CORES > 1
#if NB_CORES == 2
#pragma omp parallel default (none) \
shared (nb_packets, lattice_metrics, p_matrix, seed) \
private (state0, state1, i)
#elif NB_CORES == 3
#pragma omp parallel default (none) \
shared (nb_packets, lattice_metrics, p_matrix, seed) \
private (state0, state1, state2, i)
#elif NB_CORES == 4
#pragma omp parallel default (none) \
shared (nb_packets, lattice_metrics, p_matrix, seed) \
private (state0, state1, state2, state3, i)
#elif NB_CORES == 5
#pragma omp parallel default (none) \
shared (nb_packets, lattice_metrics, p_matrix, seed) \
private (state0, state1, state2, state3, state4, i)
#elif NB_CORES == 6
#pragma omp parallel default (none) \
shared (nb_packets, lattice_metrics, p_matrix, seed) \
private (state0, state1, state2, state3, state4, state5, i)
#elif NB_CORES == 7
#pragma omp parallel default (none) \
shared (nb_packets, lattice_metrics, p_matrix, seed) \
private (state0, state1, state2, state3, state4, state5, state6, i)
#elif NB_CORES == 8
#pragma omp parallel default (none) \
shared (nb_packets, lattice_metrics, p_matrix, seed) \
private (state0, state1, state2, state3, state4, state5, state6, state7, i)
#elif NB_CORES == 9
#pragma omp parallel default (none) \
shared (nb_packets, lattice_metrics, p_matrix, seed) \
private (state0, state1, state2, state3, state4, state5, state6, state7, state8, i)
#elif NB_CORES == 10
#pragma omp parallel default (none) \
shared (nb_packets, lattice_metrics, p_matrix, seed) \
private (state0, state1, state2, state3, state4, state5, state6, state7, state8, state9, i)
#elif NB_CORES == 11
#pragma omp parallel default (none) \
shared (nb_packets, lattice_metrics, p_matrix, seed) \
private (state0, state1, state2, state3, state4, state5, state6, state7, state8, state9, state10, i)
#elif NB_CORES == 12
#pragma omp parallel default (none) \
shared (nb_packets, lattice_metrics, p_matrix, seed) \
private (state0, state1, state2, state3, state4, state5, state6, state7, state8, state9, state10, state11, i)
#else
#error Only supporting NB_CORES <= 12
#endif
#endif
{
#pragma omp single
{