Cleanup snap_red
#include <stdio.h>
-
#define N 10
@@ -12,9 +11,8 @@ int main (void)
int cmom = 14;
int nxyz = 5000;
// fails for 149 and above: nxyz=149;
- #pragma omp target teams distribute num_teams(149) thread_limit(ng*(cmom-1)) map(tofrom:aa)
+ #pragma omp target teams distribute num_teams(nxyz) thread_limit(ng*(cmom-1)) map(tofrom:aa)
for (int gid = 0; gid < nxyz; gid++) {
-// int bb=0;
#pragma omp parallel for collapse(2)
for (unsigned int g = 0; g < ng; g++) {
for (unsigned int l = 0; l < cmom-1; l++) {
@@ -27,12 +25,11 @@ int main (void)
aa += a;
}
}
-// #pragma omp atomic
- //aa += bb;
}
- printf ("The result is = %ld!\n", aa);
- if (aa != 35100000) {
- printf("Failed\n");
+ long exp = (long)ng*(cmom-1)*nxyz*(N*(N-1)/2);
+ printf ("The result is = %ld exp:%ld!\n", aa,exp);
+ if (aa != exp) {
+ printf("Failed %ld\n",aa);
return 1;
}
return 0;
