The kernel parameters are stored in on-chip shared memory. Shared memory can have bank conflicts if threads try to access the same bank. So my question is: does that mean that using kernel parameters threads will cause bank conflicts?
No, because accesses will always be uniform: All threads of the (on compute capability 1.x half-) warp will read the same parameter at the same time, which is broadcast to all threads in a single transmission.
For completeness, I'll mention that only compute capability 1.x devices store parameters in shared memory. Higher compute capability devices store them in constant memory, where the same uniformity reasoning applies.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With