如何检查 RAM 容量
我想创建一个函数,根据某人系统上可用的 RAM 大小,以不同数量的批次导入数据。但是如何找到 R 中的可用 RAM 量呢?我可以使用 memory.size()
但这仅适用于 Windows。
I want to make a function that imports data in different numbers of batches depending on how much RAM is available on someone's system. But how can I find the amount of available RAM in R? I can use memory.size()
but that only works for Windows.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
鉴于之前评论中讨论的有关平台依赖性的警告,您可以在 Linux 上解析 /proc/meminfo:
您可以通过
system(..., intern= TRUE)
,甚至通过管道连接。5年多后编辑:在 R 中,只需遵循上一段暗示的内容即可:
Given the warnings concerning platform-dependency discussed in the earlier comment, you could for example parse
/proc/meminfo
on Linux:You could try the second approach via
system(..., intern=TRUE)
, or even via a pipe connection.Edit some 5+ years later: In R, and just following what the previous paragraph hinted at:
我建议使用
memuse::Sys.meminfo()
。I would recommend using
memuse::Sys.meminfo()
.现在您可以使用
benchmarkme::get_ram
函数来做到这一点。https://cran.r-project.org/web/packages/benchmarkme /benchmarkme.pdf
Now you can do that with
benchmarkme::get_ram
function.https://cran.r-project.org/web/packages/benchmarkme/benchmarkme.pdf
添加到已经提出的解决方案中,我编写了一个基本的 R 解决方法,可以避免包依赖项(不想添加到包中的当前依赖项):
它返回可用内存(以字节为单位)并且通常有效(在我的测试中)
Adding to the solutions already presented, I wrote a base R workaround that avoids package dependencies (didn't want to add to the current dependencies in the package):
It returns available memory in bytes and generally works (in my testing)