3.1。概述
原文: http://numba.pydata.org/numba-doc/latest/cuda/overview.html
Numba 通过直接将 CudA 内核和 CUDA 执行模型之后的 CUDA 内核和设备函数的受限子集编译为 CUDA GPU 编程。用 Numba 编写的内核似乎可以直接访问 NumPy 数组。 NumPy 阵列自动在 CPU 和 GPU 之间传输。
3.1.1。术语
这里列出了 CUDA 编程主题中的几个重要术语:
- _ 主机 _:CPU
- _ 设备 _:GPU
- _ 主机内存 _:系统主内存
- _ 设备内存 _:GPU 卡上的板载内存
- _ 内核 _:由主机启动并在设备上执行的 GPU 功能
- _ 设备功能 _:在设备上执行的 GPU 功能,只能从设备调用(即从内核或其他设备功能)
3.1.2。编程模型
Numba 公开的大多数 CUDA 编程工具都直接映射到 NVidia 提供的 CUDA C 语言。因此,建议您阅读官方 CUDA C 编程指南。
3.1.3。要求
3.1.3.1。支持的 GPU
Numba 支持支持 CUDA 的 GPU,其计算能力为 2.0 或更高,具有最新数据的 Nvidia 驱动程序。
3.1.3.2。软件
您将需要安装 CUDA 工具包。如果您使用的是 Conda,只需输入:
$ conda install cudatoolkit
3.1.4。缺少 CUDA 功能
Numba 尚未实现 CUDA 的所有功能。下面列出了一些缺少的功能:
- 动态并行
- 纹理记忆