Processing on GPU in Simulink
4 次查看(过去 30 天)
显示 更早的评论
I have a block in Simulink which does a frequency shift of a Signal. It consists of calculations involving exponential. I used the 'Math function' block. The whole Simulink model takes approximately 1042.34s. When this block is removed it takes 249.38s. So the execution time is increased so much because of this exponential block.
I am trying to find different ways to reduce the time taken because of this. I tried replacing this with a MATLAB function block using GPU Arrays like below,
function y = exponential(u)
%#codegen
y = zeros(size(u),'single');
coder.extrinsic('gpuArray');
u = gpuArray(u);
y = exp(u);
This throws a runtime error 'MATLAB expression 'exp' is not numeric.'
How to get rid of this error and use GPU in Simulink? If this is not the right way to use GPU then please give me a reference for using it right.
0 个评论
采纳的回答
Joss Knight
2018-4-28
gpuArray is not yet supported by GPU Coder. To see how you can use GPU Coder with Simulink, take a look at this example.
2 个评论
更多回答(1 个)
Hassan Khan
2021-6-23
hello brother..
i have a GPU of GTX 1650 ... i want to run my simulink model on gpu but i dont know how to do this... please give me an example of simulink or give some other reference that can help me.
Thanks
1 个评论
Joss Knight
2021-6-23
Hang on, let me Google "MATLAB Simulink GPU" for you and post the first hit:
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Get Started with GPU Coder 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!