我将 python 3 与 nvidia Rapids 一起使用,以便使用 cuml 库和 GPU 加速机器学习训练。
我的脚本还使用 keras 和 GPU 训练(通过 tf),当我到达尝试使用 CUML 的阶段时,我得到了内存错误。我怀疑这是因为 TF 没有释放 GPU 内存(查看 nvidia-smi)我看到所有内存都已分配。
这是我用来训练 cuml 模型的代码
import cuml
from cuml import LinearRegression
lr = LinearRegression()
lr.fit(encoded_data, y_train)
这是我得到的错误
[2] 调用 cuMemAlloc 导致 CUDA_ERROR_OUT_OF_MEMORY
encoded_data 和 y_train 是 numpy 数组,encoded_data 是 n*m 浮点数组,y_train 是 n*1 个作为标签的整数向量,在使用 sklearn 逻辑回归进行训练时,两者都可以正常工作。
我怎么能: 1.使用相同的 GPU(首选)而不丢失我训练的所有 tf 模型(我有更多的内存,然后 tf 模型在实践中需要,但 tf 进程仍然占用所有内存) 2.使用我的用于 CUML 计算的第二个 GPU(我找不到选择哪个 GPU 来运行 RAPIDS CUML 模型训练的方法。