<<<CUDA C++ 学习路线grid · block · warp · lane
返回首页
全局内存

内存合并模拟器

调节 stride、起始偏移和元素宽度,实时看到 32 个线程的地址分布、产生的 sector 数量和带宽利用率。

访问模式

预设
1
0

不为 0 时可能造成 sector 错位

每线程访问宽度
sector 事务数
4
理想值 4
带宽利用率
100.0%
实际搬运 128 B
真正用到 128 B
浪费 0 B
in[i]: 理想情况,32 个 float 正好铺满 4 个 sector

显存 sector 视图(每格 32 字节)

完全用满部分使用未触及

warp 内 32 个线程的地址

t0
+0
s0
t1
+4
s0
t2
+8
s0
t3
+12
s0
t4
+16
s0
t5
+20
s0
t6
+24
s0
t7
+28
s0
t8
+32
s1
t9
+36
s1
t10
+40
s1
t11
+44
s1
t12
+48
s1
t13
+52
s1
t14
+56
s1
t15
+60
s1
t16
+64
s2
t17
+68
s2
t18
+72
s2
t19
+76
s2
t20
+80
s2
t21
+84
s2
t22
+88
s2
t23
+92
s2
t24
+96
s3
t25
+100
s3
t26
+104
s3
t27
+108
s3
t28
+112
s3
t29
+116
s3
t30
+120
s3
t31
+124
s3
被模拟的访问
int i = blockIdx.x * blockDim.x + threadIdx.x;float v = in[i]; // one warp (32 threads) produces 4 32B sector transactions// moved 128 B, used 128 B, efficiency 100.0%