Forum Discussion
Altera_Forum
Honored Contributor
8 years agoMy kernel is actually RTL code, wrapped up in OpenCL function. The RTL part has 256 base address as input, and 256 channels inside the RTL will fetch data simultaneously. That are some arbitration logic in the RTL as well and eventually only 4 input avalon interface and 1 output avalon interface in the wrapper.
In this sense, I cannot figure out a safe way to break up the NDRange without modify the RTL code:( Any suggestions? --- Quote Start --- No, not separate kernels. Break up your NDRange into smaller workgroups that can fit in the hardware (use the localworksize argument when launching the kernel with clEnqueueNDRange Kernel on the host side and use a maximum or required workgroup size attribute on the kernel side). --- Quote End ---