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,只需输入:

  1. $ conda install cudatoolkit

3.1.4。缺少 CUDA 功能

Numba 尚未实现 CUDA 的所有功能。下面列出了一些缺少的功能:

  • 动态并行
  • 纹理记忆