简体   繁体   English

如何检查R中的RAM量

[英]How to check the amount of RAM in R

I want to make a function that imports data in different numbers of batches depending on how much RAM is available on someones system.我想创建一个函数,根据某人系统上可用的 RAM 数量,以不同的批次数导入数据。 But how can I find the amount of available RAM in R?但是如何在 R 中找到可用 RAM 的数量? I can use memory.size() but that only works for Windows.我可以使用memory.size()但这仅适用于 Windows。

Given the warnings concerning platform-dependency discussed in the earlier comment, you could for example parse /proc/meminfo on Linux:鉴于前面评论中讨论的有关平台依赖性的警告,您可以例如在 Linux 上解析/proc/meminfo

$ grep MemFree /proc/meminfo 
MemFree:          573660 kB
$ awk '/MemFree/ {print $2}' /proc/meminfo 
565464

You could try the second approach via system(..., intern=TRUE) , or even via a pipe connection.您可以通过system(..., intern=TRUE)甚至通过管道连接尝试第二种方法。

Edit some 5+ years later: In R, and just following what the previous paragraph hinted at:大约 5 年后编辑:在 R 中,并遵循上一段暗示的内容:

R> memfree <- as.numeric(system("awk '/MemFree/ {print $2}' /proc/meminfo", 
+                               intern=TRUE))
R> memfree
[1] 3342480
R> 

Now you can do that with benchmarkme::get_ram function.现在您可以使用benchmarkme::get_ram函数来做到这benchmarkme::get_ram

https://cran.r-project.org/web/packages/benchmarkme/benchmarkme.pdf https://cran.r-project.org/web/packages/benchmarkme/benchmarkme.pdf

我建议使用memuse::Sys.meminfo()

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM