hi, this is part of code.
for (int i=0;i<12;i++)
{
kernel[i]= clCreateKernel(programGPU, “function”, &ret);
ret=clSetKernelArg(kernel[i], 0, sizeof(cl_mem), &buffer);
…
ret=clSetKernelArg(kernel[i], 14, sizeof(float), &buffer_freq[i]);
…
ret=clSetKernelArg(kernel[i], 17, sizeof(cl_mem), &buffer_levels[i]);
}
for(int i=0;i<12;i++)
clEnqueueTask(queueCPU,kernel[i],0,NULL,NULL);
clFinish(queueCPU);
Now my question is: how I reed the buffers buffer_freq and buffer_levels.
I program this way it
for(int i=0;i<cantCudaCores;i++)
{
clEnqueueTask(queueCPU,kernel_Notch_Notch[i],0,NULL,NULL);
ret= clEnqueueReadBuffer(queueCPU, buffer_levels[i], CL_TRUE, NULL, lengthFreq * sizeof(float), levels[i].arreglo, 0, NULL, NULL);
ret= clEnqueueReadBuffer(queueCPU, buffer_freq[i], CL_TRUE, NULL, lengthFreq * sizeof(float), freq[i].arreglo, 0, NULL, NULL);
}
clFinish(queueCPU);
But, not work. Please help me!!!
hi, this is part of code.
for (int i=0;i<12;i++)
{
kernel[i]= clCreateKernel(programGPU, “function”, &ret);
ret=clSetKernelArg(kernel[i], 0, sizeof(cl_mem), &buffer);
…
ret=clSetKernelArg(kernel[i], 14, sizeof(float), &buffer_freq[i]);
…
ret=clSetKernelArg(kernel[i], 17, sizeof(cl_mem), &buffer_levels[i]);
}
for(int i=0;i<12;i++)
clEnqueueTask(queueCPU,kernel[i],0,NULL,NULL);
clFinish(queueCPU);
Now my question is: how I reed the buffers buffer_freq and buffer_levels.
I program this way it
for(int i=0;i<cantCudaCores;i++)
{
clEnqueueTask(queueCPU,kernel_Notch_Notch[i],0,NULL,NULL);
ret= clEnqueueReadBuffer(queueCPU, buffer_levels[i], CL_TRUE, NULL, lengthFreq * sizeof(float), levels[i].arreglo, 0, NULL, NULL);
ret= clEnqueueReadBuffer(queueCPU, buffer_freq[i], CL_TRUE, NULL, lengthFreq * sizeof(float), freq[i].arreglo, 0, NULL, NULL);
}
clFinish(queueCPU);
But, not work. Please help me!!!