【发布时间】:2020-07-15 02:40:55
【问题描述】:
我在 python 中使用 cudf 和 dask_cudf 模块运行代码时遇到了一些困难。
我正在通过 Anaconda 在 Jupyter Labs 上工作。我已经能够正确安装我的 nvidia-gpu 驱动程序、cudf(通过 rapidsai)和 cuda。只是,当我使用 import cudf 在 python 中导入 cudf 时,我得到一个错误读取:"home/lib/python3.7/site-packages/cudf/utils/gpu_utils.py:120: UserWarning: No NVIDIA GPU detected. Warnings.warn("No NVIDIA GPU detected")
我的环境:
- Linux:RHEL8
- Python:3.7.7
- 库达:10.2
- 英伟达驱动:390.138
- CUDF/Dask_CUDF:0.13 到 rapidsai
我正在尝试加载和操作包含数十万到数百万项数据的数据集,因此我真的需要 cudf/dask_cudf 实用程序来最大限度地利用我的时间。
当我在终端中运行nvidia-smi 时,一切看起来都很好,并且持久模式已打开。我在互联网上搜索了一个没有好主意的解决方案。任何帮助将不胜感激。
【问题讨论】:
-
驱动程序 390.138 与 CUDA 10.2 不兼容。 CUDA 10.2 需要更新的驱动程序。我猜你有一个较旧的(Fermi)GPU,你试图在上面运行,你没有提到你正在使用哪个 GPU,也没有提供
nvidia-smi输出。急流包括 CUDF require a pascal or newer GPU。 -
所以自从这篇文章以来我已经尝试了多个步骤。 1)我已经尝试降级到 CUDA 9.0。 2) 我尝试升级到最新的 NVIDIA 驱动程序 -450.87。 (我的 GPU 是 Linux RHEL8 上的 Quadro K1200)。第二个选项会导致我的系统崩溃,我必须通过 ssh 进入计算机以删除 nvidia 并使其正常工作。第一个选项会导致相同的 cudf/dask_cudf 错误。尝试 CUDA 的其他替代方法会导致驱动程序/库不匹配错误。
-
所以除非我真的得到一个新的 GPU,否则没有办法使用 CUDF?
-
抱歉,K1200 是 Maxwell GPU,但它也早于 Pascal,即 RAPIDS 的最低 GPU。这是一个开源项目。如果您对调试以前没有人测试过的问题感兴趣,并对 CUDF 代码库进行自己的更改,并且对 CUDA 有一定的专业知识,则可以将 CUDF 与您的 GPU 一起使用。但是,我将部分重复自己:我不认为您的设置是 Rapids/CUDF 使用的良好起点。它不符合规定的最低要求。但如果你有足够的动力,祝你好运!试一试。
-
FWIW 如果您尝试对任何最新版本的 RAPIDS 使用任何类型的二进制安装(例如 Anaconda 或 pip),我认为它不会起作用。您需要从源代码重新编译。
标签: python cuda dask rapids cudf