【问题标题】:Google Cloud Platform AI Notebook - how to ensure GPU is being used?Google Cloud Platform AI Notebook - 如何确保使用 GPU?
【发布时间】:2020-03-13 01:34:52
【问题描述】:

我在 GCP 上使用 Jupyter(通过 AI 平台设置简单的方法)从 scikit-garden 训练 MondrianForestRegressor。我的数据集大约是 450000 x 300,并且使用机器按原样进行训练,即使使用并行性 n_jobs=-1(32 个 CPU,208GB RAM)也比我想要的慢得多。

我连接了一个 GPU(2x NVIDIA Tesla T4),重新启动了实例并再次尝试。训练速度似乎不受此更改的影响。

  • 在 Jupyter 中训练模型以确保实际使用 GPU 时,我需要做些什么吗?
  • GPU 甚至对基于树的方法有用吗?有文献表明它们是 (https://link.springer.com/chapter/10.1007/978-3-540-88693-8_44),但我不完全理解使 GPU 更适合不同类型算法的复杂性,除了它们可以很好地处理巨型矩阵计算,例如用于深度学习。

【问题讨论】:

    标签: python google-cloud-platform scikit-learn gpu random-forest


    【解决方案1】:

    创建笔记本时,它会分配一个 GCE 虚拟机实例和一个 GPU,要监控 GPU,您应该 install 每个连接了 GPU 的虚拟机实例上的 GPU 指标报告代理,这将收集 GPU 数据并将其发送到StackDriver Monitoring

    另外make use of the GPUs有两种方式:

    • 高级估算器 API:无需更改代码,只要 您的 ClusterSpec 配置正确。如果一个簇是混合的 CPU 和 GPU,将 ps 作业名称映射到 CPU 和 worker 作业 为 GPU 命名。

    • 核心 TensorFlow API:您必须分配操作以在启用 GPU 的情况下运行 机器。这个过程与使用 GPU 和 TensorFlow 相同 本地。您可以使用 tf.train.replica_device_setter 将操作分配给 设备。

    另外,这里是lecture,关于何时使用 GPU 而不是 CPU,在这里您可以阅读lecture,关于使用 GPU over Tree 训练时的性能

    【讨论】:

      猜你喜欢
      • 2021-05-01
      • 2019-11-30
      • 1970-01-01
      • 1970-01-01
      • 2020-08-10
      • 1970-01-01
      • 2021-03-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多