Skip to content

1.3。安装

原文: http://numba.pydata.org/numba-doc/latest/user/installing.html

1.3.1。兼容性

Numba 与 Python 2.7 和 3.5 或更高版本以及 Numpy 版本 1.7 到 1.16 兼容(参见本说明的 1.16 支持限制)。

我们支持的平台是:

  • Linux x86(32 位和 64 位)
  • Linux ppcle64(POWER8)
  • Windows 7 及更高版本(32 位和 64 位)
  • OS X 10.9 及更高版本(64 位)
  • 计算能力为 2.0 及更高版本的 NVIDIA GPU
  • AMD ROC dGPU(仅限 Linux,不适用于 AMD Carrizo 或 Kaveri APU)
  • ARMv7(32 位小端,如 Raspberry Pi 2 和 3)

使用@jit 的自动并行化仅在 64 位平台上可用,并且在 Windows 上的 Python 2.7 中不受支持。

1.3.2。在 x86 / x86_64 / POWER 平台上使用 conda 进行安装

安装 Numba 并获得更新的最简单方法是使用conda,一个由 Anaconda,Inc。维护的跨平台软件包管理器和软件分发。您可以使用 Anaconda 在一次下载中获得完整的堆栈,或 Miniconda ,它将安装 conda 环境所需的最小包。

安装 conda 后,只需输入:

$ conda install numba

要么:

$ conda update numba

请注意,与 Anaconda 一样,Numba 仅支持 64 位小端模式下的 PPC。

要为 Numba 启用 CUDA GPU 支持,请为您的平台安装 NVIDIA 的最新图形驱动程序。 (请注意,默认情况下随许多 Linux 发行版提供的开源 Nouveau 驱动程序不支持 CUDA。)然后安装cudatoolkit包:

$ conda install cudatoolkit

您无需从 NVIDIA 安装 CUDA SDK。

1.3.3。在 x86 / x86_64 平台上使用 pip 进行安装

适用于 Windows,Mac 和 Linux 的二进制轮也可从 PyPI 获得。您可以使用pip安装 Numba:

$ pip install numba

这将下载所有必需的依赖项。您不需要安装 LLVM 来使用 Numba(事实上,Numba 将忽略系统上安装的所有 LLVM 版本),因为所需的组件捆绑在 llvmlite 轮中。

要通过 pip 安装 Numba 使用 CUDA,您需要从 NVIDIA 安装 CUDA SDK 。然后,您可能需要设置以下环境变量,以便 Numba 可以找到所需的库:

  • NUMBAPRO_CUDA_DRIVER - CUDA 驱动程序共享库文件的路径
  • NUMBAPRO_NVVM - CUDA libNVVM 共享库文件的路径
  • NUMBAPRO_LIBDEVICE - 包含.bc 文件的 CUDA libNVVM libdevice _ 目录 _ 的路径

1.3.4。启用 AMD ROCm GPU 支持

ROCm 平台允许在 Linux 上使用 AMD GPU 进行 GPU 计算。要在 Numba 中启用 ROCm 支持,需要 conda,因此请先安装 Numba 0.40 或更高版本的 Anaconda 或 Miniconda 安装。然后:

  1. 按照 ROCm 安装说明进行操作。

  2. numba频道安装roctools conda 包:

    ```py $ conda install -c numba roctools

    ```

有关示例笔记本,请参阅 roc-examples 存储库。

1.3.5。在 Linux ARMv7 平台上安装

Berryconda 是 Raspberry Pi 的基于 conda 的 Python 发行版。我们现在将软件包上传到 Anaconda Cloud 上的numba频道,用于 32 位小端,基于 ARMv7 的电路板,目前包括 Raspberry Pi 2 和 3,但不包括 Pi 1 或 Zero。这些可以使用来自numba频道的 conda 进行安装:

$ conda install -c numba numba

Berryconda 和 Numba 可能会在其他基于 Linux 的 ARMv7 系统上运行,但尚未经过测试。

1.3.6。从源 安装

从源代码安装 Numba 非常简单(类似于其他 Python 软件包),但由于需要特殊的 LLVM 构建,安装 llvmlite 可能非常具有挑战性。如果您是为了 Numba 开发而从源代码构建的,请参阅构建环境,了解有关如何使用 conda 创建 Numba 开发环境的详细信息。

如果由于其他原因从源代码构建 Numba,请首先按照 llvmlite 安装指南进行操作。完成后,您可以从 Github 下载最新的 Numba 源代码:

$ git clone git://github.com/numba/numba.git

最新版本的源档案也可以在 PyPI 上找到。除llvmlite外,您还需要:

  • 与 Python 安装兼容的 C 编译器。如果您使用的是 Anaconda,则可以安装 Linux 编译器 conda 软件包gcc_linux-64gxx_linux-64,或 macOS 软件包clang_osx-64clangxx_osx-64
  • NumPy

然后,您可以从源代码树的顶层构建和安装 Numba:

$ python setup.py install

1.3.7。检查安装

您应该能够从 Python 提示符导入 Numba:

$ python
Python 2.7.15 |Anaconda custom (x86_64)| (default, May  1 2018, 18:37:05)
[GCC 4.2.1 Compatible Clang 4.0.1 (tags/RELEASE_401/final)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import numba
>>> numba.__version__
'0.39.0+0.g4e49566.dirty'

您还可以尝试执行 numba -s 命令来报告有关系统功能的信息:

$ numba -s
System info:
--------------------------------------------------------------------------------
__Time Stamp__
2018-08-28 15:46:24.631054

__Hardware Information__
Machine                             : x86_64
CPU Name                            : haswell
CPU Features                        :
aes avx avx2 bmi bmi2 cmov cx16 f16c fma fsgsbase lzcnt mmx movbe pclmul popcnt
rdrnd sse sse2 sse3 sse4.1 sse4.2 ssse3 xsave xsaveopt

__OS Information__
Platform                            : Darwin-17.6.0-x86_64-i386-64bit
Release                             : 17.6.0
System Name                         : Darwin
Version                             : Darwin Kernel Version 17.6.0: Tue May  8 15:22:16 PDT 2018; root:xnu-4570.61.1~1/RELEASE_X86_64
OS specific info                    : 10.13.5   x86_64

__Python Information__
Python Compiler                     : GCC 4.2.1 Compatible Clang 4.0.1 (tags/RELEASE_401/final)
Python Implementation               : CPython
Python Version                      : 2.7.15
Python Locale                       : en_US UTF-8

__LLVM information__
LLVM version                        : 6.0.0

__CUDA Information__
Found 1 CUDA devices
id 0         GeForce GT 750M                              [SUPPORTED]
                      compute capability: 3.0
                           pci device id: 0
                              pci bus id: 1

(输出由于长度而截断)


我们一直在努力

apachecn/AiLearning

【布客】中文翻译组