如何在 Google Colab 上安装 nvidia apex

Posted

技术标签:

【中文标题】如何在 Google Colab 上安装 nvidia apex【英文标题】:How to install nvidia apex on Google Colab 【发布时间】:2019-12-08 14:16:07 【问题描述】:

我所做的是按照官方 github 网站上的说明进行操作

!git clone https://github.com/NVIDIA/apex
!cd apex
!pip install -v --no-cache-dir ./

它给了我错误:

ERROR: Directory './' is not installable. Neither 'setup.py' nor 'pyproject.toml' found.
Exception information:
Traceback (most recent call last):
  File "/usr/local/lib/python3.6/dist-packages/pip/_internal/cli/base_command.py", line 178, in main
    status = self.run(options, args)
  File "/usr/local/lib/python3.6/dist-packages/pip/_internal/commands/install.py", line 326, in run
    self.name, wheel_cache
  File "/usr/local/lib/python3.6/dist-packages/pip/_internal/cli/base_command.py", line 268, in populate_requirement_set
    wheel_cache=wheel_cache
  File "/usr/local/lib/python3.6/dist-packages/pip/_internal/req/constructors.py", line 248, in install_req_from_line
    "nor 'pyproject.toml' found." % name
pip._internal.exceptions.InstallationError: Directory './' is not installable. Neither 'setup.py' nor 'pyproject.toml' found.

【问题讨论】:

【参考方案1】:

添加 CUDA_HOME 环境变量后为我工作:

%%writefile setup.sh

export CUDA_HOME=/usr/local/cuda-10.1
git clone https://github.com/NVIDIA/apex
pip install -v --no-cache-dir --global-option="--cpp_ext" --global-option="--cuda_ext" ./apex
!sh setup.sh

【讨论】:

一般需要多长时间? 我需要 8 分钟 自 2021 年 6 月 21 日起,这不适用于 colab。 pytorch 的默认版本现在是 1.9+cuda102。 apex 的最新版本(21 年 6 月 21 日)无法使用 cuda102 构建上述选项。在 apex 构建之前,Pytorch 需要降级才能使用 cuda101。【参考方案2】:

(只想添加评论,但我没有足够的声誉......)

它对我有用,但 cd 实际上不是必需的。另外,我需要这里建议的两个全局选项:https://github.com/NVIDIA/apex/issues/86

%%writefile setup.sh

git clone https://github.com/NVIDIA/apex
pip install -v --no-cache-dir --global-option="--cpp_ext" --global-option="--cuda_ext" ./apex

然后

!sh setup.sh

【讨论】:

由于某种原因,另一个选项有效,而这个现在没有,所以不确定他们是否在 apex 和 GColab 中改变了一些东西......只需尝试两者,看看哪一个适合你:D 此脚本下载了 colab 中的 apex。【参考方案3】:

更新

首先,创建一个文件,例如setup.sh如下:

对于带有 CUDA 和 C++ 扩展的顶点:

%%writefile setup.sh

git clone https://github.com/NVIDIA/apex
cd apex
pip install -v --disable-pip-version-check --no-cache-dir --global-option="--cpp_ext" --global-option="--cuda_ext" ./

然后,安装它

!sh setup.sh

仅适用于 Python 构建

%%writefile setup.sh

git clone https://github.com/NVIDIA/apex
cd apex
pip install -v --disable-pip-version-check --no-cache-dir ./

仅 Python 的构建忽略了使用 apex.optimizers.FusedAdamapex.normalization.FusedLayerNorm 等所需的某些 Fused 内核。

检查apex quickstart。

【讨论】:

像魅力一样为我工作!谢谢 需要多长时间? @Nabin 没花太多时间在 colab 上。 我安装在普通的 gpu 机器上,花了很长时间,至少 30 分钟【参考方案4】:

在 colab 中而不是使用“!”在cd 命令前使用"%'

!git clone https://github.com/NVIDIA/apex
%cd apex
!pip install -v --no-cache-dir ./

上面的代码可以正常工作。

【讨论】:

【参考方案5】:

我尝试了几个选项,但我喜欢 this website 中的那个,它与 fast_bert 和 torch 配合得很好:

try:
  import apex
except Exception:
  ! git clone https://github.com/NVIDIA/apex.git
  % cd apex
  !pip install --no-cache-dir --global-option="--cpp_ext" --global-option="--cuda_ext" .
  %cd ..

【讨论】:

【参考方案6】:

问题在于!cd apex。请改用%cd apex

阅读:https://***.com/a/57212513/8690463

【讨论】:

【参考方案7】:

我使用纸空间,这对我有用:

!pip install git+https://github.com/NVIDIA/apex

【讨论】:

以上是关于如何在 Google Colab 上安装 nvidia apex的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Google Colab 上安装 gmpy2?

如何在 google colab 上安装 pydot 和 graphviz?

如何在 Google Colab 上安装 PyTorch v1.0.0+?

如何使用 pip 在 Google Colab 实例上安装 Talib 模块

pip 安装了 google.colab,现在无法在 Jupyter 笔记本上运行代码

可以在google colab上安装cupy吗?