【问题标题】:Caching tensorflow results on GPU在 GPU 上缓存 tensorflow 结果
【发布时间】:2017-09-21 17:45:42
【问题描述】:

使用 tensorflow 如何将 session.run(some_tensors,...) 的结果保存在 GPU 上,然后再次使用它来提供 feed_dicts?

Edit::: 这是我为什么需要这个的具体例子。 所以我有数据(多维张量),上面有多个 RNN。但是数据太大了,我无法在 GPU 上处理一个样本。因此,我将样本分成几部分并通过 RNN 运行它们。但这意味着我需要在处理完第一部分后保存 RNN 的最终状态,然后将其传递给处理下一部分的 RNN。 现在我使用session.run() 评估第 1 部分 RNN 的状态并将它们带到 CPU 中,然后再次将它们传递到 feed_dicts 以评估数据的下一部分等等。

【问题讨论】:

  • 请在您的问题中添加一些代码以帮助我们帮助您。这是一个很好的示例问题,也使用 fill_feed_dict: stackoverflow.com/questions/40477927/…
  • 存储在张量中的结果已经在 GPU 上(当然如果启用了 GPU 计算)。为什么要做session.run(some_tensors, ...)?该问题的更多上下文会有所帮助。

标签: python tensorflow


【解决方案1】:

答案是sess.partial_run_setup,然后是sess.partial_run

从 r1.3 开始,这仍然是“实验性的,可能会发生变化”。

sess.partial_run_setup 为部分运行设置包含供稿和提取的图表。

sess.partial_run 继续执行更多的提要和提取。

更多信息https://www.tensorflow.org/api_docs/python/tf/Session

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-25
    • 1970-01-01
    • 2012-07-02
    • 2016-10-02
    • 2018-02-02
    • 2020-12-20
    相关资源
    最近更新 更多