在 Windows Server 2012R2 上使用 R 不会占用更多内存

在 Windows Server 2012R2 上使用 R 不会占用更多内存

我对 Windows Server 2012 R2 数据中心上的 R 和 RStudio 有疑问。

我直接访问服务器,服务器有 128GB RAM。但是当我运行 R 脚本时,任务管理器显示,R 仅使用最多 2 MB 的 RAM,并且总共使用了整个系统 RAM 的 4%。

我安装了最新的 R 版本,并在 RStudio 中使用 64 系统选项。当我检查内存时memory.limit(),R 说我有1.759219e+13内存,这是不可能的。我无法更改内存限制或其他任何内容。

每当我直接通过 Rgui 访问 R 并输入行时,R 都会告诉我以下内容

> memory.limit()
[1] 131023
> memory.size()
[1] 31.5 

每当我在笔记本电脑上使用 R 时,它都会占用大约 5GB 的 RAM。所以我想知道这里发生了什么。

问题

1.)我可以在 Windows 2012 Server 上使用 R 和 RStudio 吗(我觉得应该没问题,尽管我在互联网上没有找到很多相关信息)

2.) 我如何为 R 进程提供更多内存,以便计算更快?

非常感谢您的帮助。这是我的第一个问题,如果您需要任何其他信息,请告诉我。

编辑

也许这有助于解释我的问题。为什么 R 过程无法获得更多功率?

资源监视器和任务管理器:

资源监视器和任务管理器]

答案1

所以我弄清楚了一些事情并想与你们分享。

memory.limit()首先,有关“ R says, that I have ”错误内存的信息1.759219e+13是由于当前的 R 版本造成的。我降级到以前的版本,并没有收到错误。

其次,在服务器上安装 RStudio 桌面版完全没问题。唯一的缺点是,您必须直接/使用远程桌面控制登录服务器。除此之外,它可以像硬件更好的普通桌面一样工作。

第三,从本质上讲,R 的设计只为每个 R 实例使用一个核心。显然,您可以使用特殊的 R 函数进行同时计算(parallel),或者只需启动多个 R 实例(打开多个 R 会话),这样每个会话就使用不同的核心。打开不同的 R 实例后,我可以使用所有 RAM。您只需分解代码即可。

我发布了这个答案,以防其他人遇到这些问题。我希望这是发布答案的正确方法,而不是编辑我的帖子。如果我需要更正此问题,请告诉我。

谢谢

相关内容