共享内存
一、为什么要使用 shared memory?
1.1、从硬件出发理解:

如图,我们的计算单元在 Thread 中,距离 Thread 越远的访问时间要更久 ,一般都是在 global memory 中运行程序,但是为了 “更近”,我们会选择 shared memory。
1.2、从软件出发理解:
拿矩阵乘法来举例:

我们要计算得出矩阵C(红色)的每个元素,会发现不管是矩阵A还是矩阵B的元素,都不止用了一次。但是我们要取数据的时候,都会从 global memory (全局内存)中取数据,这样存在冗长的操作ÿ