필터 지우기
필터 지우기

gpuArray of variable size for codegen

조회 수: 5 (최근 30일)
Arabarra
Arabarra 2018년 11월 2일
댓글: Benjamin Ballintyn 2020년 1월 13일
Hi,
I'm trying to figure out the actual potential of the codegen capabilities on the GPU. In particular there are two points that I are not addressed explicitly in the online documentation (or I couldn't find the info).
*) First, it seems that the gpuArray type cannot be used as input. This is surprising, as it reduces drastically the applicability of mex functions generated with codegen... Is there a way to create mex files that accept gpuArray vectors as rhs?
*) Second, codegen throws a warning when input arguments of matrices that will be sent to the GPU (by a coder.gpu.kernelfun pragma inside the .m file) are declared to be of variable size using coder.typeof(). Again, a significant restriction on the usability of codegen.... Am I missing something here? Is there a way to trick codegen into accepting dynamically sized arrays as input for GPU processing?
thanks! Daniel

채택된 답변

Joss Knight
Joss Knight 2018년 11월 5일
Support for gpuArray input comes with R2018b. I don't know about the other thing, sorry.
  댓글 수: 1
Benjamin Ballintyn
Benjamin Ballintyn 2020년 1월 13일
I am running 2018b and when trying to use coder.typeof to specify a variable sized gpuArray input I get the following error:
"Variable-size dimension inputs are not supported when using CODER.TYPEOF to represent gpuArray inputs."
So it seems gpuArrays can be inputs to codegen functions but they cannot be specified as variable size. This is definitely a significant drawback since you would need to recompile the desired function(s) every time you want to change the input size.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 GPU Computing in MATLAB에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by