does gpu coder uses gpu without using gpuArray in matlab?

6 次查看(过去 30 天)
I'm using gpu coder with my project.
And I've found that even if I don't use gpuArray in matlab source, the output C++ source using CUDA seems to use GPU.
Does CUDA uses GPU even if I don't use gpuArray in matlab at all?
  1 个评论
Pravin Jagtap
Pravin Jagtap 2020-4-29
Hello,
There are ways through which MATLAB achieves parallelism and generates a call to GPUs. Can you share a snippet of MATLAB code for which GPU Kernel is generated?

请先登录,再进行评论。

回答(1 个)

Infinite_king
Infinite_king 2024-1-9
Hi Sungjin Wie,
The short answers is yes. CUDA uses GPU even if you don't use 'gpuArrays'. Infact, GPU Coder will not support 'gpuArray' data type inside the function. More detailed answer is as follows.
CUDA is a parallel computing platform and application programming interface (API) model created by NVIDIA, enabling developers to utilize GPUs for general-purpose processing.
GPU Coder is a MATLAB toolbox that automatically generates CUDA code from MATLAB algorithms, allowing for seamless deployment of computationally intensive tasks on GPUs, ideal for accelerating numerical simulations and signal processing applications.
'gpuArray' is a MATLAB data type that represents an array stored on the GPU. When we pass 'gpuArray' to any supported function, the function will use GPU to perform the operations. Whereas, GPU Coder was used to generate CUDA code for a given MATLAB function, which can then be compiled and executed independently. GPU Coder will not support 'gpuArray' data type inside the function. The reason being, GPU Coder will automatically determine which memory or variable should be transferred to GPU and when it should be transferred.
For more details, refer the following resorces
Hope this is helpful.

类别

Help CenterFile Exchange 中查找有关 GPU Computing 的更多信息

产品


版本

R2020a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by