diff --git a/pipepar/pipeline_template.c b/pipepar/pipeline_template.c index bcc997c..33d183d 100644 --- a/pipepar/pipeline_template.c +++ b/pipepar/pipeline_template.c @@ -184,9 +184,55 @@ int compute_metrics(void) #endif #endif +#if NB_CORES > 1 +#if NB_CORES == 2 +#pragma omp parallel default (none) \ + shared (nb_packets, seed) \ + private (state1, i) +#elif NB_CORES == 3 +#pragma omp parallel default (none) \ + shared (nb_packets, seed) \ + private (state1, state2, i) +#elif NB_CORES == 4 #pragma omp parallel default (none) \ shared (nb_packets, seed) \ private (state1, state2, state3, i) +#elif NB_CORES == 5 +#pragma omp parallel default (none) \ + shared (nb_packets, seed) \ + private (state1, state2, state3, state4, i) +#elif NB_CORES == 6 +#pragma omp parallel default (none) \ + shared (nb_packets, seed) \ + private (state1, state2, state3, state4, state5, i) +#elif NB_CORES == 7 +#pragma omp parallel default (none) \ + shared (nb_packets, seed) \ + private (state1, state2, state3, state4, state5, state6, i) +#elif NB_CORES == 8 +#pragma omp parallel default (none) \ + shared (nb_packets, seed) \ + private (state1, state2, state3, state4, state5, state6, state7, i) +#elif NB_CORES == 9 +#pragma omp parallel default (none) \ + shared (nb_packets, seed) \ + private (state1, state2, state3, state4, state5, state6, state7, state8, i) +#elif NB_CORES == 10 +#pragma omp parallel default (none) \ + shared (nb_packets, seed) \ + private (state1, state2, state3, state4, state5, state6, state7, state8, state9, i) +#elif NB_CORES == 11 +#pragma omp parallel default (none) \ + shared (nb_packets, seed) \ + private (state1, state2, state3, state4, state5, state6, state7, state8, state9, state10, i) +#elif NB_CORES == 12 +#pragma omp parallel default (none) \ + shared (nb_packets, seed) \ + private (state1, state2, state3, state4, state5, state6, state7, state8, state9, state11, i) +#else +#error Only supporting NB_CORES <= 12 +#endif +#endif { #pragma omp single {