Agnostic GPU card

I am training deep learning models with ESRI tools, but they don’t recognize my GPU. I suspect it is because it is not NVIDIA, which is the standard for most companies. Is there a way to make tools that use GPUs agnostic to card brand?

1 Like

I don’t think you mean this, but just saying:

@ed_carter in more the realm of ‘reality’ you could check out Google’s Coral:

Have you tried tensorflowjs since it’s backed by webgl?

Is there something in NVIDIA cards that would differentiate its GPU processors from other cards? I have to run the tool on my CPU because it doesn’t recognize my GPU in slot 1, not NVIDIA brand.

  1. What’s the exact code in your project that’s looking for a gpu?
  2. Assuming cuda and nvidia tools are installed, what’s the output of nvidia-smi ?
    1. What’s the name / model of your GPU?
  1. I am using a tool from ESRI, I don’t have the code. The tool is Train Deep Learning Model, and the subsequent model is used in Detect Objects with Deep Learning. This tool scanns rasters for patterns set up in the trained model, in this case scanning maps for survey marker symbols. The tool doesn’t recognize my GPU in the specified card slot, and so it defaults to the much slower CPU for processing.
  2. The problem is that I don’t have an NVIDIA card or cuda to do parallel processing. I’m working on getting one since all the tools seem to be dependent on that brand of GPU which is the most expensive. Do you think it is failing because there is no cuda or perhaps because the tool is looking for specific NVIDIA generated files like, nvidia-smi?

“Supported GPU cards and drivers

Various solutions are available for GPU processing. Currently, only NVIDIA GPUs with a minimum CUDA compute capability of version 5.2 are supported by the tools. Your system must have an appropriate card installed to access this capability”

If that’s the tool you’re using,
The requirements seem pretty clear

1 Like

Were it the case you actually had code for a program, there are alternate compliers to Nvidia’s that would let you compile CUDA code for for AMD’s ROCm platform (and I am presuming that is at least we are talking about, not older Intel integrated graphics or something really obscure). However that seems not to be the case here.

Unfortunately I never heard of this company before, but I do note it seems an AWS hosting option (Esri & Amazon Web Services | Enterprise GIS Cloud Operations) is available.

Of course I have no idea of your budget (you’d obviously have to pay at least for the compute), but otherwise that would get you access to much beefer GPUs than you can run at home.

1 Like

Yes, thank you for looking into my question and locating the documentation. My oversite. The tool is CUDA dependent which makes it NVIDIA GPU dependent. I will point out to ESRI that neither the interface nor the error messages specify this issue even though, as you clearly show, it is in the requirements.

1 Like

But maybe there is a GPU agnostic library that they could use instead of hardcoding everything to Nvidia/CUDA? The lib that can autodetects available features and dynamically use them as needed.

1 Like

@abitrolly There is: NVIDIA CUDA Can Now Directly Run On AMD GPUs Using The "SCALE" Toolkit

However this would require ESRI to recompile the application using this library (software is not open source), and they strike me as a large/well established company, so I see very little chance of this happening.

1 Like

If you’re a client and pay for license, you can request this feature. Maybe it will be “Level 3” (never implemented), but I would at least expect a response.