Shared memory coalescing Q:Is it a typo in the programming guide?

P 47 of the programming guide states the following:

Contrary to what is quoted above, to my understanding, second example will NOT create a kind of bank conflict, which can be avoided with the proper memory alignment.

Am I right?

There will be bank conflicts in the second case. Consider 16 threads accessing the first field of an array of the 2-element float structures. Starting with 0, the byte adresses accessed will be:
0, 8, 16, 24, 32, 40, 48, 56, 64, 72, 80, 88, 96, 104, 102, 120.
Accesses that will cause conflicts since they belong to the same bank: 0 and 64, 8 and 72, …


Exactly. My mistake. Thanks a lot!