huangyhg 发表于 2022-12-21 16:44:24

CUDA学习笔记(九)内存

Memory

kernel性能高低是不能单纯的从warp的执行上来解释的。比如之前博文涉及到的,将block的维度设置为warp大小的一半会导致load efficiency降低,这个问题无法用warp的调度或者并行性来解释。根本原因是获取global memory的方式很差劲。

众所周知,memory的操作在讲求效率的语言中占有极重的地位。low-latency(低延迟)和high-bandwidth(高带宽)是高性能的理想情况。但是购买拥有大容量,高性能的memory是不现实的,或者不经济的。因此,我们就要尽量依靠软件层面来获取最优latency和bandwidth。CUDA将memory model unit分为device和host两个系统,充分暴露了其内存结构以供我们操作,给予用户充足的使用灵活性。
https://blog.csdn.net/qq_36387683/article/details/81125453

页: [1]
查看完整版本: CUDA学习笔记(九)内存