如何在Windows上限制RAM RServer / RSession的使用量

时间:2018-02-15 23:32:22

标签: r rserve

我需要限制RServer / RSession在Windows 2012服务器上使用的RAM量。

我是一名系统管理员,有两名用户在我们的服务器上运行R Studio。每个R Studio都会生成一个或多个RSession.exe进程。有时其中一个RSession.exe进程会占用太多内存。昨天,它增长到大约60GB,几乎所有其他东西都停止了。 (我们有72 GB可用,但48 GB分配给SQL Server。)我需要确保使用R不会关闭我的服务器或影响在其上运行的其他应用程序。

的信息:

   sessionInfo()
   R version 3.4.3 (2017-11-30)
   Platform: x86_64-w64-mingw32/x64 (64-bit)
   Running under: Windows Server >= 2012 x64 (build 9200)

根据某些论坛的建议,我尝试将--max-mem-size=4000M添加到用于启动R的快捷方式中。这适用于RGUI.exe,但不适用于RStudio.exe。当我从memory.limit()运行RGui时,它会按预期返回4000。当我从memory.limit()运行RStudio时,无论启动参数如何,都会返回71999。而且,无论如何,我不确定这是设置限制的正确位置。 RStudio这样的命令行切换会影响它生成的RSession进程吗?

我还尝试在memory.limit(4000)内运行RStudio,但收到以下消息:

“Warning message: In memory.limit(4000) : cannot decrease memory limit: ignored”

我还阅读了一些关于在用户配置文件中设置内存限制的内容,但所有这些操作的说明都是面向Unix的,并且指的是我们的Windows服务器上不存在的文件和目录。 (对不起,我不是R人,只是一个可怜的系统管理员,试图让他的服务器保持活力......)

有一篇文章指出,“只是为了让你知道,2014/06/10上的support.rstudio.com:”我们已将它列入我们要调查的事项列表中并希望尽快找到解决方案“({{ 3}})。这是一个错误吗?如果是这样,有什么解决方法?如果没有,我如何限制RSession内存使用量,以免它关闭我的服务器?

谢谢你, 罗比

0 个答案:

没有答案