Behavior if no CUDA-capable device is present
stukowski opened this issue · comments
I was testing how VisRTX behaves in case no CUDA capable device is present. Since I did not have such a computer available, I used the environment variable CUDA_VISIBLE_DEVICES
to pretend that no device is present. VisRTX does not seem to be able to handle this situation properly.
$ CUDA_VISIBLE_DEVICES="" ./ovito
[DEBUG] initializing VisRTX device
[DEBUG] running on GPU 0 (/)
[FATAL] error querying current context: error code '3'
Killed
Tested this on the Linux platform.
f534f68 is the direct fix to this, which will end up in the same case as before: the triggering of a FATAL
error means that the device is not in a usable state and should be released by the application. Now you should get:
$ CUDA_VISIBLE_DEVICES="" ./viewer
[FATAL][0x55f5caa55980] no CUDA capable devices found!
...where the application should not continue to use the device due to the FATAL
error (exiting immediately in the above case).