Swizzle Layout — SWIZZLE_128B
physical_sector = logical_sector XOR row | 8 rows × 32 banks,每个 sector 4 个 bank
Read
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 互不相同)。