1

目前,我尝试为我的内核获得更好的占用率,并使用占用率计算器和从 sdk 示例设备查询中获得的设备信息。我想知道块和流式多处理器(sm)的声明略有不同。在 sdk 示例中,它被称为

每个块的共享内存总量

每个块可用的寄存器总数

但在占用计算器中,这些信息是按 sm 计算的,这对我来说更有意义。

这只是 sdk 示例中的错误声明吗?

4

1 回答 1

0

我同意你的看法。

共享内存和寄存器是硬件资源,而块是软件编程模型的概念。

另一方面,我认为我们可以说一个块可以使用的最大共享内存量等于 GPU 设备的每个多处理器的共享内存总量。

官方文档 CUDA 编程指南也使用术语“每个多处理器共享内存”,如计算能力部分所示;

于 2013-01-24T08:24:09.327 回答