提问人:S.V 提问时间:12/4/2020 最后编辑:S.V 更新时间:10/18/2022 访问量:1520
XGBoost 模型:在 GPU 上训练,在没有 GPU RAM 分配的情况下在 CPU 上运行
XGBoost model: train on GPU, run on CPU without GPU RAM allocation
问:
如何在 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 进行预测呢?
非常感谢您的帮助!
答: 暂无答案
评论