MATLAB: Can’t I use gpuArray in Simulink

gpuParallel Computing Toolboxsimulink

Hello!
I am trying to use gpuArrays in a MATLAB function block inside my Simulink Model. It is throwing the following error,
Undefined function or variable 'gpuArray'.
Function 'Signal Generation/IQ Signal Generation (Simulation)/GenerateTxSignals/Build Transmitter Signals/MATLAB Function' (#1183.3137.3156), line 86, column 26:
"gpuArray(SigSource)"
I was trying to convert an existing Array into a GPU Array,
SigSource = gpuArray(SigSource);
Is it not possible to use gpuArray inside a MATLAB function block?
Other Details,
  • MATLAB Version: 2017a
  • Driver Version: '23.21.13.9133 (391.33)'
  • Parallel Computing Toolbox Version 6.10 (R2017a)

Best Answer

Declaring coder.extrinsic('gpuArray') before calling the function solves the issue. However, it should be noted that there is no code Generation for this function as it is declared extrinsic.