pause-1.c 426 B

1234567891011121314151617181920212223
  1. #include <omp.h>
  2. #include <stdlib.h>
  3. int a[64];
  4. int
  5. main ()
  6. {
  7. int i;
  8. #pragma omp parallel for
  9. for (i = 0; i < 64; i++)
  10. a[i] = i;
  11. omp_pause_resource (omp_pause_soft, omp_get_initial_device ());
  12. #pragma omp parallel for
  13. for (i = 0; i < 64; i++)
  14. a[i] += i;
  15. omp_pause_resource_all (omp_pause_hard);
  16. #pragma omp parallel for
  17. for (i = 0; i < 64; i++)
  18. if (a[i] != 2 * i)
  19. abort ();
  20. return 0;
  21. }