it means i can't pass more than a 1KB to the kernel, correct ?!
if it's correct, what is the point of 1GB memory in device ?

09-02-2012, 10:23 AM

o4kareg2

Re: Kernel argument size

Fitsr thatk,s i didnt know that since i use parameter with 8 byte max.
Omgf!
Kernel parameter can be a pointer to 4 Gib size for 32x Systems and i dont know what big for 64x
systems. If you dont understand the difference to what you are trying to make, leanr C first.

09-02-2012, 10:41 AM

chippies

Re: Kernel argument size

CL_DEVICE_MAX_PARAMETER_SIZE determines the maximum number of bytes that can be occupied by parameters passed to a kernel.

On a 32-bit system, this means that passing a pointer uses 4 bytes of the available 1024. Passing a cl_int will also use 4 bytes. So, theoretically, you can pass up to 256 pointers to your kernel.

This property is not a limit on the size of a buffer pointed to by a pointer, just a limit on how many parameters can be passed to a kernel.

09-02-2012, 10:47 AM

perlish

Re: Kernel argument size

Quote:

Originally Posted by chippies

CL_DEVICE_MAX_PARAMETER_SIZE determines the maximum number of bytes that can be occupied by parameters passed to a kernel.

On a 32-bit system, this means that passing a pointer uses 4 bytes of the available 1024. Passing a cl_int will also use 4 bytes. So, theoretically, you can pass up to 256 pointers to your kernel.

This property is not a limit on the size of a buffer pointed to by a pointer, just a limit on how many parameters can be passed to a kernel.

hit the spot, that was i want, thanks.

09-02-2012, 11:09 AM

o4kareg2

Re: Kernel argument size

By te way, if i do use the kernel parameters to have a full input array :P does it give adwantages compare to if i d give that to a pointer? Adwantages like faster transfering or something?

09-03-2012, 05:55 AM

perlish

Re: Kernel argument size

Quote:

Originally Posted by o4kareg2

By te way, if i do use the kernel parameters to have a full input array :P does it give adwantages compare to if i d give that to a pointer? Adwantages like faster transfering or something?