11

内存警告会影响我的 R 分析吗?

在 RI 中运行大型数据分析脚本时,会收到如下警告:

在“...”中达到_ __Mb 的总分配:请参阅帮助...

但是我的脚本继续没有错误,只是警告。对于其他数据集,我收到如下错误:

错误:无法分配大小为 ___Mb 的向量:

我知道这个错误会破坏我的数据分析,但是仅仅收到警告有什么问题吗?我没有注意到我的数据集中有任何遗漏,但它非常大,我没有很好的方法来检查所有内容。我分配给内存的内存为 18000Mb,无法合理分配更多。

4

1 回答 1

8

早在R 2.5.1 新闻中,我发现了对内存分配警告的引用:

malloc.c已更新至 2.8.3 版。此版本的分配策略略有不同,并且在接近地址空间限制时可能会更好地工作,但可能会在成功分配之前发出更多关于达到总分配的警告。

基于这个注释,我假设(没有任何内部实现的高级知识)当 R ( malloc.c) 中的内存分配调用尝试分配内存失败时会给出警告。多次尝试分配内存,可能使用不同的方法,也可能调用垃圾收集器。只有当malloc相当确定不能进行分配时才会返回错误。

警告不会危及现有的 R 对象。他们只是通知用户 R 接近计算机内存的限制。

(我希望有更多知识的用户可以确认这一点......)

于 2013-08-02T23:45:01.697 回答