【问题标题】:Allocating a larger object in R?在 R 中分配一个更大的对象?
【发布时间】:2010-09-16 18:21:54
【问题描述】:

我对以下几点有点困惑:我在 32 位 Windows 上运行 R。我的理解是我应该最多可以分配 2GB。

我阅读了help("Memory") 并使用标志RGui.exe --max-mem-size=1000M 启动了我的R 会话。然后在 R 中确认这一点:

> memory.limit()
[1] 1000

但是当我运行一个特定的操作时,我收到一条错误消息,上面写着“无法分配大小为 512MB 的对象”。

我做错了吗?

【问题讨论】:

    标签: memory r


    【解决方案1】:

    错误消息并不意味着您有 512MB 的可用内存。您仍然有 1000MB 的限制,但至少使用了 488,并且对于某些操作,R 需要 512MB,而这是不可用的,因此它无法分配某些对象。

    如果您跟踪 R 进程使用的内存(例如使用 Process Explorer),那么您将看到 R 如何达到 1000MB 并显示您的消息。

    【讨论】:

      【解决方案2】:

      尝试同时添加标志--max-mem-size=1000M

      另请注意,在 32 位构建中,可能有足够的可用内存,但没有足够大的连续地址空间块来映射它。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-03-07
        • 2016-03-14
        • 2010-11-05
        • 2013-04-03
        • 1970-01-01
        • 1970-01-01
        • 2017-01-25
        • 2015-12-15
        相关资源
        最近更新 更多