Straight Line Traffic

A warp of 32 threads reads a row-major 2D matrix where each thread t reads from a widely-spaced row (stride equal to the matrix width, far exceeding a cache line). Compared to threads reading 32 consecutive addresses within one row, what happens to effective global memory throughput?

A

Throughput improves because each thread gets an exclusive memory channel

B

Throughput drops significantly because the strided addresses cannot be merged into a few wide transactions, forcing roughly one transaction per thread

C

Throughput improves because the stride reduces bank conflicts inside HBM

D

Throughput is unaffected since HBM bandwidth does not depend on access pattern