As per the OpenCL documentation released by Khronos, the ICD loader scans for the vendor .icd file in the registry (on Windows) or in /etc/OpenCL/vendors/ directory (on Linux) to load the platform’s dynamic library.
My question is that in our HPC cluster, the compute nodes that have the NVIDIA GPUs do not have the .icd file in this path and hence the code samples do not work (clPlatformIDs return with the -1001 error). If I were to create the file manually in this path, the changes will be lost upon reboot. Is there a workaround this or is it necessary to have the file in this path?