-
Notifications
You must be signed in to change notification settings - Fork 474
Description
Description
I am writing an application and I want to have it run on both NVidia and AMD GPUs depending on the machine with the option to run on the CPU is the user wishes so..
I have loaded the Nuget packages for all the backends:
CPU,
CUDA11,
CUDA12,
OPENCL
So far I have managed to switch between CUDA and CPU using the
NativeLibraryConfig.All.WithCuda(false); and NativeLibraryConfig.All.WithCuda(true); on an NVIDIA machine.
When I am trying to run the same build on a machine that has and AMD GPU I only get the CPU to work
I have tried the following if there is an AMD card detected.
Set NativeLibraryConfig.All.WithCuda(false); uses the CPU
NativeLibraryConfig.All.WithCuda(true); uses the CPU
Did not used any of the calls above and still uses the CPU
I went through the available calls but I could not see anything referring to OpenCL or clblast so I used the following call with the same result
NativeLibraryConfig.All.WithLibrary(, path to cblast llava dll);
When I am making a build with the OpenCL nuget package only then I can see that the AMD GPU is being used and I can see that OpenCL is mentioned in the console output.
I am not sure if I am missing anything so any help would be appreciated.
Thanks in advance.