【问题标题】:R: How to use multiple GPUs with XGBoost?R:如何在 XGBoost 中使用多个 GPU?
【发布时间】:2020-02-19 12:45:43
【问题描述】:

我正在使用 xgboost 来训练我的模型。我体验到在 GPU 上使用 xgboost 进行训练要快得多。由于我有 2 个 GPU 可用,我想同时使用这两个。其实我有关于这个话题的三个问题。

如何同时使用多个 GPU?

当运行this example 时,只有第一个 GPU 可以工作。我试图设置gpu_id = 1。效果很好,即另一个 GPU 完成了这项工作。然后我读到gpu_id = -1 会提供解决方案。显然,这个论点不适用于 CUDA 10。我也尝试过 n_gpus,但这似乎已被弃用。

完成后如何清除 GPU 内存的缓存?

当我在某种循环中调整参数时,这变得很重要。单个模型很适合内存,但不是数百个。

当我将gpu_id 更改为下一个模型时,R 会崩溃。有没有办法防止这种情况发生?


我的设置:

  • R 版本 3.4.4
  • Ubuntu 18.04.3
  • xgboost_1.0.0.1
  • CUDA 10.2

【问题讨论】:

  • 到目前为止,您有没有遇到过这些问题?

标签: r xgboost


【解决方案1】:
tree_method = 'gpu_hist',
n_gpus = -1

在 python 中使用 CUDA 10.2 和 xgboost 0.90 为我工作。

【讨论】:

    猜你喜欢
    • 2022-01-27
    • 1970-01-01
    • 2019-06-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多