1
ich Féval haben die folgenden KernelGPUArray Passing
__global__ void func(float * arr, int N) {
int rtid = blockDim.x * blockIdx.x + threadIdx.x;
if(rtid < N)
{
float* row = (float*)((char*)arr + rtid*N*sizeof(float));
for (int c = 1; c < N; ++c)
{
//Manipulation
}
}
}
Wenn ich rufe den Kernel von MATLAB
gtm= parallel.gpu.GPUArray(ones(a,b,'double'));
OR gtm= parallel.gpu.GPUArray(ones(1,b,'double'));
gtm=k.feval(gtm,b);
es gibt die folgende Fehlermeldung mit:
Error using ==> feval
parallel.gpu.GPUArray must match the exact input type as specified on the kernel
prototype.
Error in ==> sameInit at 65 gtm=k.feval(gtm,b);
jemand kann Bitte sag mir wo ich falsch liege.
Sie deinnkening,
Viharri PL V.
Double und Float sind nicht vom selben Typ, oder? – talonmies
Ich habe die Antwort Danke für die Antwort. –
Wenn Sie eine Lösung haben, bitte posten Sie es als Antwort. Sie können es später akzeptieren, was zeigt, dass die Frage erfolgreich gelöst wurde. – talonmies