我有一个从 Java 程序调用的 Rscript。该脚本的目的是在 ggplot 中自动生成一堆图形,然后将它们放在 pdf 上。它已经变得有点大了,可能有 30 个图表,每个图表都是从自己的脚本中调用的。
输入是 5-20mb 的制表符分隔文件,但 R 会话有时会使用 12gb 的内存(在 mac 10.68 btw 上,但这将在所有平台上运行)。
我已经阅读了有关如何查看对象的内存大小的信息,并且没有任何东西超过 25mb,即使它为每个函数和每个过滤器步骤深度复制所有内容,它也不应该接近这个级别。
我也试过 gc() 无济于事。如果我执行 gcinfo(TRUE) 然后 gc() 它告诉我它正在使用类似 38mb 的内存。但是活动监视器高达 12gb,并且速度变慢可能是由于高清上的分页。
我尝试通过一个 bash 脚本调用它,在该脚本中我做了 ulimit -v 800000 但没有用。
我还可以做些什么?