XGBoost 模型:在 GPU 上训练,在没有 GPU RAM 分配的情况下在 CPU 上运行

XGBoost model: train on GPU, run on CPU without GPU RAM allocation

提问人:S.V 提问时间:12/4/2020 最后编辑:S.V 更新时间:10/18/2022 访问量:1520

问:

如何在 GPU 上训练 XGBoost 模型,但在 CPU 上运行预测而不分配任何 GPU RAM

我的情况:我在 Python 中创建了一个 XGBoot 模型 (),然后在 GPU 上训练它,然后将其保存(泡菜)到磁盘,然后从磁盘读取模型,然后使用它进行预测。tree_method='gpu_hist'predictor='cpu_predictor'

我的问题是:一旦模型开始进行预测,即使我在 CPU 上运行它,它仍然会分配少量的 GPU RAM(大约 ~289MB)。这是一个问题,原因如下:

  • 我运行模型的多个副本来并行化预测,如果我运行太多,预测过程就会崩溃。
  • 如果我在同一台机器上同时运行预测,则无法使用 GPU 来训练其他模型。

那么,如何告诉 XGBoost 不分配任何 GPU RAM,而仅使用 CPU 和常规 RAM 进行预测呢?

非常感谢您的帮助!

python gpu cpu xgboost 预测

评论

0赞 Pedro 11/22/2023
偶然发现了同样的问题。你最终解决了吗?

答: 暂无答案