Memory Caffe:如何选择可容纳内存的最大可用批量大小?

Memory Caffe:如何选择可容纳内存的最大可用批量大小?,memory,gpu,deep-learning,caffe,Memory,Gpu,Deep Learning,Caffe,由于GPU内存太小(1Gb),我遇到了一些问题,问题是目前我通过反复试验选择了batch\u size,而且似乎即使日志中按行打印的内存大小数据所需的内存:小于1Gb,也可能会失败 因此,我的问题是: 如何自动选择适合GPU内存的最大可用批量大小 批量越大越好吗 如何计算网络部署期间训练和转发所需的峰值内存 更新: 我还检查了,但我不确定什么是如果数据所需的逐行日志内存中打印的内存大小小于您的GPU总内存,它仍然可能失败,因为其他程序正在使用您的一些GPU内存。在linux下,您可以使用nvid

由于GPU内存太小(1Gb),我遇到了一些问题,问题是目前我通过反复试验选择了
batch\u size
,而且似乎即使日志中按行打印的内存大小
数据所需的内存:
小于1Gb,也可能会失败

因此,我的问题是:

  • 如何自动选择适合GPU内存的最大可用批量大小
  • 批量越大越好吗
  • 如何计算网络部署期间训练和转发所需的峰值内存
  • 更新:
    我还检查了,但我不确定什么是

    如果数据所需的逐行日志内存中打印的内存大小小于您的GPU总内存,它仍然可能失败,因为其他程序正在使用您的一些GPU内存。在linux下,您可以使用nvidia smi命令检查统计信息。对于我来说,Ubuntu图形环境使用97MB

  • 没有办法说caffe能自动做到这一点
  • 是的,为了训练。它在一次过程中处理更多的数据,并在更少的时间内收敛,因为每次迭代SGD将产生与GD更相似的结果。对于部署来说,这并不是那么关键
  • 这可以让您大致了解如何计算:

  • 是的,我已经读过这篇文章,但我的问题更具体于Caffe实现,所以我想知道Caffe如何管理它的内存。