123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- #include <omp.h>
- #include <stdlib.h>
- int
- main ()
- {
- if (getenv ("OMP_NUM_TEAMS") == NULL
- && omp_get_max_teams () != 0)
- abort ();
- omp_set_num_teams (7);
- if (omp_get_max_teams () != 7)
- abort ();
- if (getenv ("OMP_TEAMS_THREAD_LIMIT") == NULL
- && omp_get_teams_thread_limit () != 0)
- abort ();
- omp_set_teams_thread_limit (15);
- if (omp_get_teams_thread_limit () != 15)
- abort ();
- #pragma omp teams
- {
- #pragma omp parallel if(0)
- if (omp_get_max_teams () != 7
- || omp_get_teams_thread_limit () != 15
- || omp_get_num_teams () < 1
- || omp_get_num_teams () > 7
- || omp_get_team_num () < 0
- || omp_get_team_num () >= omp_get_num_teams ()
- || omp_get_thread_limit () < 1
- || omp_get_thread_limit () > 15)
- abort ();
- }
- #pragma omp teams num_teams(5) thread_limit (13)
- {
- #pragma omp parallel if(0)
- if (omp_get_max_teams () != 7
- || omp_get_teams_thread_limit () != 15
- || omp_get_num_teams () != 5
- || omp_get_team_num () < 0
- || omp_get_team_num () >= omp_get_num_teams ()
- || omp_get_thread_limit () < 1
- || omp_get_thread_limit () > 13)
- abort ();
- }
- #pragma omp teams num_teams(8) thread_limit (16)
- {
- #pragma omp parallel if(0)
- if (omp_get_max_teams () != 7
- || omp_get_teams_thread_limit () != 15
- || omp_get_num_teams () != 8
- || omp_get_team_num () < 0
- || omp_get_team_num () >= omp_get_num_teams ()
- || omp_get_thread_limit () < 1
- || omp_get_thread_limit () > 16)
- abort ();
- }
- return 0;
- }
|