我正在使用R中的一些建模算法,其中一个在Java(bartMachine)中运行.我发现在运行建模算法之前,我需要根据数据的大小增加java的最大堆空间.
我这样做是这样的:
options(java.parameters = "-Xmx16g")
我的问题是,如果没有其他算法将使用java(或至少那么多堆空间),我是否需要重置堆空间?或者根据需要回收分配给java的内存而不会丢失性能?
我已经搜索了一些关于这个主题的内容,我了解如何更改/降低堆空间.我也明白R/Java会做垃圾收集来从内存中删除旧对象以释放更多空间.
我不明白的是,更改堆空间会如何影响其他程序可用的内存,以及在这种情况下是否有必要甚至是一个好主意来改变使用后的堆大小.
我已经看过的一些答案/资源:
http://www.bramschoenmakers.nl/en/node/726
https://cran.r-project.org/web/packages/bartMachine/bartMachine.pdf