Swizzle Layout — SWIZZLE_128B

physical_sector = logical_sector XOR row  |  8 rows × 32 banks,每个 sector 4 个 bank
Read
Index

未使用 Swizzle

32 Banks

SWIZZLE_128B

32 Banks
逐 Cycle 的 Read

未使用 Swizzle

SWIZZLE_128B

1 个 element = 1 个 bank(4 bytes)。一个 32-thread warp 读取 32 个 element;bank conflict 会串行化成额外 cycle。
Column Tile (8×4):8 rows × 4 cols(1 sector)= 32 reads。 使用 swizzle:1 cycle;不使用时:8 cycles(8-way conflicts)。
Row Tile (1×32):1 row × 32 cols = 32 reads。 总是 1 cycle(同一 row 内 32 个 bank 互不相同)。