mirror of
https://github.com/autc04/Retro68.git
synced 2024-12-12 11:29:30 +00:00
34 lines
617 B
C
34 lines
617 B
C
|
#include <omp.h>
|
||
|
#include <stdlib.h>
|
||
|
|
||
|
int
|
||
|
main (void)
|
||
|
{
|
||
|
int err = 0;
|
||
|
|
||
|
omp_set_num_threads (4);
|
||
|
if (omp_get_max_threads () != 4)
|
||
|
abort ();
|
||
|
#pragma omp parallel reduction(|: err) num_threads(1)
|
||
|
{
|
||
|
if (omp_get_max_threads () != 4)
|
||
|
err |= 1;
|
||
|
omp_set_num_threads (6);
|
||
|
#pragma omp task if(0) shared(err)
|
||
|
{
|
||
|
if (omp_get_max_threads () != 6)
|
||
|
err |= 2;
|
||
|
omp_set_num_threads (5);
|
||
|
if (omp_get_max_threads () != 5)
|
||
|
err |= 4;
|
||
|
}
|
||
|
if (omp_get_max_threads () != 6)
|
||
|
err |= 8;
|
||
|
}
|
||
|
if (err)
|
||
|
abort ();
|
||
|
if (omp_get_max_threads () != 4)
|
||
|
abort ();
|
||
|
return 0;
|
||
|
}
|