lib-5.f90 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. ! { dg-do run }
  2. program main
  3. use openacc
  4. implicit none
  5. integer n
  6. if (acc_get_num_devices (acc_device_nvidia) .ne. 0) then
  7. call acc_init (acc_device_nvidia)
  8. n = 0
  9. call acc_set_device_num (n, acc_device_nvidia)
  10. if (acc_get_device_num (acc_device_nvidia) .ne. 0) stop 11
  11. if (acc_get_num_devices (acc_device_nvidia) .gt. 1) then
  12. n = 1
  13. call acc_set_device_num (n, acc_device_nvidia)
  14. if (acc_get_device_num (acc_device_nvidia) .ne. 1) stop 12
  15. end if
  16. call acc_shutdown (acc_device_nvidia)
  17. end if
  18. if (acc_get_num_devices (acc_device_radeon) .ne. 0) then
  19. call acc_init (acc_device_radeon)
  20. n = 0
  21. call acc_set_device_num (n, acc_device_radeon)
  22. if (acc_get_device_num (acc_device_radeon) .ne. 0) stop 21
  23. if (acc_get_num_devices (acc_device_radeon) .gt. 1) then
  24. n = 1
  25. call acc_set_device_num (n, acc_device_radeon)
  26. if (acc_get_device_num (acc_device_radeon) .ne. 1) stop 22
  27. end if
  28. call acc_shutdown (acc_device_radeon)
  29. end if
  30. end program