Forum Discussion
Altera_Forum
Honored Contributor
12 years agoSwizzle,
Many thanks for the response / clarification. re the buffers being copied to the host side I'd strongly urge you to examine this in future releases. For the kind of applications I'm interested in porting to these devices continually moving the data back and forward across the PCI bus will seriously degrade performance. We've seen this on the GPUs, it was crucial to keep the data resident on the card and only copy minimal amounts of data back and forward to avoid the PCIe overhead. I should probably be able to work around the 20 program limit in this current application, however, I do see this being an issue for some of the larger applications we have in mind. Regards --- Quote Start --- Regarding memory being wiped: these buffers are actually copied to the host side to preserve them so no need to worry about them being deleted/freed. However, this may incur some slight performance penalty when context switching between OpenCL programs. The limit of 32 kernels is per OpenCL program (aocx file). The limit of 20 OpenCL programs per host program. That is why you are seeing this error message. My recommendation is to try to squeeze more kernels per program, if at all possible. Future releases may increase the number of active OpenCL programs but this is not determined yet. We will take your comments into consideration. --- Quote End ---