什么是 CUDA 上下文?

What is a CUDA context?

任何人都可以解释或推荐一些关于什么是 CUDA 上下文的好资料吗?我搜索了 CUDA 开发人员指南,我对它不满意。

任何解释或帮助都会很棒。

cuda API 公开了有状态库的特性:两个连续的调用相互关联。简而言之,上下文就是它的状态。

runtime API is a wrapper/helper of the driver API. You can see in the driver API that the context is explicitly made available, and you can have a stack of contexts for convenience. There is one specific context which is shared between driver and runtime API (See primary context)).

上下文包含控制和使用设备的所有管理数据。例如,它包含已分配内存列表、包含设备代码的已加载模块、CPU 与 GPU 内存之间的零拷贝映射等

最后,请注意,此 post 更多的是经验而非文档证明。

本质上,一种数据结构包含与在您进行的调用之间保持一致状态相关的信息,例如(打开)(执行)(关闭)

这样一来,您调用的函数就可以向正确的方向发送信号,即使您没有明确告诉它们该方向是什么。