shared memory bank conflicts when reading?


does a shared memory read access from different threads to the same bank cause a bank conflict?


Yes. Unless all 16 threads are reading the same word.


ok do i understand correctly:
16 is a half warp size and there couldnt be bank conflicts within the 2 warp halfs.

so is it right to say:
"you have only to avoid bank conflicts (r&w) within the threads 0-15, 16-31, 32-47, 48-63, … " ?

but im still a little bit confused about “…unless all 16 are reading the same word”. does this mean, if 15 and 1 not, there would be a conflict, but if all 16 there would be none?



When all the 16 threads in an half warp read the same word, there is a broadcast mechanism.

ah great, thank u!

Yes, that’s correct.