Cuda 中的运行时 VS 驱动程序 API

Posted

技术标签:

【中文标题】Cuda 中的运行时 VS 驱动程序 API【英文标题】:Runtime VS Driver API in Cuda 【发布时间】:2021-10-31 19:01:11 【问题描述】:

在使用 CUDA 编程时,在函数调用中使用运行时 API 很常见。不同的消息来源坚持认为这两个 API 的性能几乎相同,最好关注内存使用和线程组织以提高性能。那么这两个 API 之间的真正区别是什么?

【问题讨论】:

【参考方案1】:

引用 CUDA 文档:https://docs.nvidia.com/cuda/cuda-driver-api/driver-vs-runtime-api.html#driver-vs-runtime-api

    驱动程序和运行时 API 的区别

    驱动程序和运行时 API 非常相似,大部分都可以使用 可以互换。但是,有一些值得注意的关键差异 两者之间。

    复杂性与控制

    运行时 API 通过以下方式简化设备代码管理 提供隐式初始化、上下文管理和模块 管理。这导致代码更简单,但它也缺乏 驱动程序 API 具有的控制权。

【讨论】:

以上是关于Cuda 中的运行时 VS 驱动程序 API的主要内容,如果未能解决你的问题,请参考以下文章

如何将 cuda 驱动程序 api 与 cuda 运行时 api 混合使用?

AMD 相当于 CUDA 驱动程序 API?

第一篇 CUDA基础

如何从驱动程序 API 使用运行时 API 创建的上下文

等效于 cudaSetDevice 的 CUDA 驱动程序 API

使用CUDA Driver API VS2012时未解析的外部符号