【问题标题】:see RAM usage in R-studio before crash?崩溃前查看 R-studio 中的 RAM 使用情况?
【发布时间】:2016-10-06 20:53:47
【问题描述】:

我正在为一些项目从 Python 切换到 R,我很难理解 R - R-Studio 中的 RAM 管理。

我有以下两个简单的问题

  • 我们能看到 R 目前使用了多少 RAM 吗?就像在 Spyder 中可以看到,例如,当前 RAM 的 20% 已满。这将让我了解我是否可以使用我的代码移动一个,或者内存崩溃是否接近。

  • 我是否需要设置 R 可以使用的最大 RAM 量,或者一切都像 Python 中那样自动(其中 Spyder 在需要时吃掉 RAM)

非常感谢!

【问题讨论】:

  • 检查 gc() 以检查正在使用的内存量
  • 查看pryr 包;它有一个 mem_used 函数,它包装了 gc 并为您提供了一个更容易解释的数字,例如 Gb 而不是字节。它的object_sizeobject.size 的一个同样方便的版本。不过,一般来说,只要你不使用超过你拥有的东西,R 就非常擅长根据需要分配内存并尽可能地返回它。你不应该做任何事情来实现它。

标签: r rstudio


【解决方案1】:

检查gc() 以检查正在使用的内存量。

而且我认为 R 使用了所有可用的内存。但是,您也可以通过memory.limit(size=) 设置内存限制。

此外,我建议使用Microsoft R Open,因为它引入了一些并行处理,从而提高了计算速度。还可以查看其他 Microsoft Client R 和 Server R。

【讨论】:

  • R Open 是否会加快 dplyr 等软件包的速度?
  • 我想是的。我还推荐 R 的 data.table 包。应用一些使用 dplyr 执行的数据帧函数要快得多。这是数据表功能的备忘单s3.amazonaws.com/assets.datacamp.com/img/blog/…
  • MRO 主要是一种优化的 BLAS(英特尔 MKL),它只是加速矩阵运算。一些包确实在后台使用矩阵,但优化的 BLAS 并不意味着您的 data.frame 或列表/对象操作会移动得更快。完全并行化需要更多的工作。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-02
  • 2016-08-29
  • 2013-03-31
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多