Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can we please have GPU support? #219

Open
xonaman opened this issue Aug 22, 2024 · 10 comments
Open

Can we please have GPU support? #219

xonaman opened this issue Aug 22, 2024 · 10 comments
Labels
enhancement New feature or request

Comments

@xonaman
Copy link

xonaman commented Aug 22, 2024

Is your feature request related to a problem? Please describe.
Not a problem, but GPU utilization would make a good performance boost.

Describe the solution you'd like
OpenCV offers types like cv::GpuMat via the CUDA module, which bindings could be implemented to.

Describe alternatives you've considered
GPU is THE alternative to CPU image processing.

Additional context
The following graphic from here should say all you need to know.
perf

@xonaman xonaman added the enhancement New feature or request label Aug 22, 2024
@rainyl
Copy link
Owner

rainyl commented Aug 23, 2024

Yes, it's in consideration. But it's just not easy and lots of works todo, and i have no much time, will work on in the future.

@abdelaziz-mahdy
Copy link
Contributor

what needs to be implemented to make it work? maybe i can help in it when i get time too

@rainyl
Copy link
Owner

rainyl commented Aug 26, 2024

@abdelaziz-mahdy basically something like https://github.com/hybridgroup/gocv/tree/release/cuda

and of course, a nvidia GPU is required to test it🤣

@abdelaziz-mahdy
Copy link
Contributor

@abdelaziz-mahdy basically something like https://github.com/hybridgroup/gocv/tree/release/cuda

and of course, a nvidia GPU is required to test it🤣

Mission failed for me then 😂

@rainyl
Copy link
Owner

rainyl commented Aug 26, 2024

me too. I am developing on a laptop without a NVIDIA GPU equipped, so not active on this.

If any one want to work on this, refer to https://github.com/hybridgroup/gocv/tree/release/cuda

@frg-x
Copy link

frg-x commented Oct 28, 2024

Why do you recall CUDA if mobile devices have their own GPUs, not related to CUDA?

@abdelaziz-mahdy basically something like https://github.com/hybridgroup/gocv/tree/release/cuda

and of course, a nvidia GPU is required to test it🤣

@abdelaziz-mahdy
Copy link
Contributor

Why do you recall CUDA if mobile devices have their own GPUs, not related to CUDA?

@abdelaziz-mahdy basically something like https://github.com/hybridgroup/gocv/tree/release/cuda

and of course, a nvidia GPU is required to test it🤣

I think he wants it for windows and Linux,

Mobile gpu support can be achieved using vulkan, but it's performance is still not that good I think and I don't know if matgpu supports it or not

@rainyl
Copy link
Owner

rainyl commented Oct 28, 2024

Well, GPU backends such as OpenCL and Vulkan on mobile devices have been supported.

@frg-x
Copy link

frg-x commented Oct 28, 2024

How to enable GPU processing? Is GPU-processing support implemented in opencv_dart API?

Well, GPU backends such as OpenCL and Vulkan on mobile devices have been supported.

@rainyl
Copy link
Owner

rainyl commented Oct 28, 2024

How to enable GPU processing? Is GPU-processing support implemented in opencv_dart API?

Well, GPU backends such as OpenCL and Vulkan on mobile devices have been supported.

What processing? if you mean the methods like "cv::cuda::threshold", they are not supported by opencv on mobile devices.

GPU backends like OpenCL are used for dnn-related inferences, they are supported both in opencv_core and opencv_dart for now. If you want to enable them, please refer to the document of opencv.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants