CUDA_VERSION和CUDART_VERSION一定是一样的吗?



CUDA Driver API 定义了CUDA_VERSION(cuda.h年),CUDA Runtime API 定义了CUDART_VERSION(cuda_runtime_api.h年)。但是 -CUDART_VERSION不是定义为CUDA_VERSION而是直接定义为数字。

它们是否总是应该具有完全相同的值,或者是否存在它们可能不同的情况?

它们在观察上是相同的,但没有联系。

正如您在运行时已经知道的那样,CUDA 版本可以与 CUDART 版本不同。 因此(或者,就该答案所描述的而言)两者之间没有联系。

但是,cuda.hcuda_runtime_api.h都将由 CUDA 安装程序安装。 因此,对于安装程序安装的内容,它们将匹配。 安装程序会安装驱动程序和开发环境,其中 CUDA(驱动程序 API)版本和 CUDA 运行时 API 版本匹配。 但稍后可能会更改(例如,如果您更新驱动程序。 也就是说,运行时版本可以根据后续安装活动而更改。 但是 CUDA 工具包安装程序安装的cuda.h和 CUDA 工具包安装程序安装的cuda_runtime_api.h将保持原样,就像工具包安装程序安装的那样。

cuda_runtime_api.h不依赖于cuda.h.因此,一个定义不仅仅是另一个定义。 您可以构建不依赖于cuda.h的 CUDA 运行时 API 应用程序(deviceQuery示例代码就是一个例子),因此cuda_runtime_api.h没有理由根据cuda.h中的某些内容构建定义 - 这将要求您在包含cuda_runtime_api.h时始终包含cuda.h,而 CUDA 设计人员无意这样做。

相关内容

  • 没有找到相关文章

最新更新