OpenMP can't find device at jetson tx2

I think I can use OpenMP at Tx2 as two device, one is Arm-v8 cores as host and the other is CUDA cores as target device.
But as I use the code as bellow, the print is

Host device = 0
Default device = 0
number of threads in default device = 1
number of CPUS in default device = 4
number of target devices = 0


    int host,default_device;
    host = omp_get_initial_device();
    default_device = omp_get_default_device();
    printf("Host device = %d\n", host);
    printf("Default device = %d\n", default_device);
    if (omp_get_default_device() != default_device+1)
        printf("Default device is still = %d\n", default_device);

    printf("number of threads in default device = %d \n",omp_get_num_threads());

    printf("number of CPUS in default device = %d \n",omp_get_num_procs());

    printf("number of target devices = %d\n",omp_get_num_devices());

Leaving alone the CPUs number is not 6, the device can’t be found nether.
What can I do to find the device? Thanks all…


Have you checked with the OpenMP team to see if they support TX2 and Denver CPU?

An additional question for you: If you run the command β€œcat /proc/cmdline”, do you see anything with β€œisolcpus” in it? If so, then this probably needs to be neutralized by adding this to the end of the β€œAPPEND” key/value pair of β€œ/boot/extlinux/extlinux.conf”:
(appending this as the last instance of isolcpus without any number on the right side of the β€œ=” essentially disables isolcpus)

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.