XFAIL OpenMP/nvptx execution-time hangs for simple nested OpenMP 'target'/'parallel'/'task' constructs [PR99555]
... still awaiting proper resolution, of course. libgomp/ PR target/99555 * testsuite/lib/libgomp.exp (check_effective_target_offload_device_nvptx): New. * testsuite/libgomp.c/pr99555-1.c <nvptx offload device>: Until resolved, make sure that we exit quickly, with error status, XFAILed. * testsuite/libgomp.c-c++-common/task-detach-6.c: Likewise. * testsuite/libgomp.fortran/task-detach-6.f90: Likewise.
This commit is contained in:
parent
39d23b7960
commit
4dd9e1c541
@ -401,6 +401,18 @@ proc check_effective_target_offload_device_shared_as { } {
|
||||
} ]
|
||||
}
|
||||
|
||||
# Return 1 if using nvptx offload device.
|
||||
proc check_effective_target_offload_device_nvptx { } {
|
||||
return [check_runtime_nocache offload_device_nvptx {
|
||||
#include <omp.h>
|
||||
#include "testsuite/libgomp.c-c++-common/on_device_arch.h"
|
||||
int main ()
|
||||
{
|
||||
return !on_device_arch_nvptx ();
|
||||
}
|
||||
} ]
|
||||
}
|
||||
|
||||
# Return 1 if at least one Nvidia GPU is accessible.
|
||||
|
||||
proc check_effective_target_openacc_nvidia_accel_present { } {
|
||||
|
@ -2,6 +2,8 @@
|
||||
|
||||
#include <omp.h>
|
||||
#include <assert.h>
|
||||
#include <unistd.h> // For 'alarm'.
|
||||
|
||||
#include "on_device_arch.h"
|
||||
|
||||
/* Test tasks with detach clause on an offload device. Each device
|
||||
@ -12,7 +14,8 @@ int main (void)
|
||||
{
|
||||
//TODO See '../libgomp.c/pr99555-1.c'.
|
||||
if (on_device_arch_nvptx ())
|
||||
__builtin_abort (); //TODO Until resolved, skip, with error status.
|
||||
alarm (4); /*TODO Until resolved, make sure that we exit quickly, with error status.
|
||||
{ dg-xfail-run-if "PR99555" { offload_device_nvptx } } */
|
||||
|
||||
int x = 0, y = 0, z = 0;
|
||||
int thread_count;
|
||||
|
@ -2,12 +2,15 @@
|
||||
|
||||
// { dg-additional-options "-O0" }
|
||||
|
||||
#include <unistd.h> // For 'alarm'.
|
||||
|
||||
#include "../libgomp.c-c++-common/on_device_arch.h"
|
||||
|
||||
int main (void)
|
||||
{
|
||||
if (on_device_arch_nvptx ())
|
||||
__builtin_abort (); //TODO Until resolved, skip, with error status.
|
||||
alarm (4); /*TODO Until resolved, make sure that we exit quickly, with error status.
|
||||
{ dg-xfail-run-if "PR99555" { offload_device_nvptx } } */
|
||||
|
||||
#pragma omp target
|
||||
#pragma omp parallel // num_threads(1)
|
||||
|
@ -21,7 +21,8 @@ program task_detach_6
|
||||
|
||||
!TODO See '../libgomp.c/pr99555-1.c'.
|
||||
if (on_device_arch_nvptx () /= 0) then
|
||||
error stop !TODO Until resolved, skip, with error status.
|
||||
call alarm (4, 0); !TODO Until resolved, make sure that we exit quickly, with error status.
|
||||
! { dg-xfail-run-if "PR99555" { offload_device_nvptx } }
|
||||
end if
|
||||
|
||||
!$omp target map (tofrom: x, y, z) map (from: thread_count)
|
||||
|
Loading…
Reference in New Issue
Block a user