testsuite/libgomp.c/ordered-3.c

Go to the documentation of this file.
00001 #include <stdlib.h>
00002 
00003 int cnt;
00004 
00005 void
00006 check (int x)
00007 {
00008   if (cnt++ != x)
00009     abort ();
00010 }
00011 
00012 int
00013 main (void)
00014 {
00015   int j;
00016 
00017   cnt = 0;
00018 #pragma omp parallel for ordered schedule (static, 1) num_threads (4) if (0)
00019   for (j = 0; j < 1000; j++)
00020     {
00021 #pragma omp ordered
00022       check (j);
00023     }
00024 
00025   cnt = 0;
00026 #pragma omp parallel for ordered schedule (static, 1) num_threads (4) if (1)
00027   for (j = 0; j < 1000; j++)
00028     {
00029 #pragma omp ordered
00030       check (j);
00031     }
00032 
00033   cnt = 0;
00034 #pragma omp parallel for ordered schedule (runtime) num_threads (4) if (0)
00035   for (j = 0; j < 1000; j++)
00036     {
00037 #pragma omp ordered
00038       check (j);
00039     }
00040 
00041   cnt = 0;
00042 #pragma omp parallel for ordered schedule (runtime) num_threads (4) if (1)
00043   for (j = 0; j < 1000; j++)
00044     {
00045 #pragma omp ordered
00046       check (j);
00047     }
00048 
00049   cnt = 0;
00050 #pragma omp parallel for ordered schedule (dynamic) num_threads (4) if (0)
00051   for (j = 0; j < 1000; j++)
00052     {
00053 #pragma omp ordered
00054       check (j);
00055     }
00056 
00057   cnt = 0;
00058 #pragma omp parallel for ordered schedule (dynamic) num_threads (4) if (1)
00059   for (j = 0; j < 1000; j++)
00060     {
00061 #pragma omp ordered
00062       check (j);
00063     }
00064 
00065   cnt = 0;
00066 #pragma omp parallel for ordered schedule (guided) num_threads (4) if (0)
00067   for (j = 0; j < 1000; j++)
00068     {
00069 #pragma omp ordered
00070       check (j);
00071     }
00072 
00073   cnt = 0;
00074 #pragma omp parallel for ordered schedule (guided) num_threads (4) if (1)
00075   for (j = 0; j < 1000; j++)
00076     {
00077 #pragma omp ordered
00078       check (j);
00079     }
00080 
00081   return 0;
00082 }

Generated on Fri Apr 5 05:38:10 2013 for Libgomp by  doxygen 1.4.7