0

我观察到bartMachine重复R执行时会增加内存使用量。为了显示:

options(java.parameters = "-Xmx8g")
library(bartMachine)

data(iris)
iris2 = iris[51:150,]
iris2$Species = factor(iris2$Species)

#build BART classification model
set_bart_machine_num_cores(4)
do.bart = function(){
for(i in 1:30){
bart_machine = build_bart_machine(iris2[ ,1:4], iris2$Species)
}
}

do.bart()

第一次运行将只使用大约 100MB,后来运行几个 100s,甚至后来大约 1-2 Gb(在我的机器上)。似乎以某种方式在运行之间没有清空内存。在某些时候(在其他应用程序中),这会导致内存溢出保留的内存。

有什么可以做的吗,比如在重复运行之间清空内存?当然可以重新启动 R 会话,但这种措施似乎很极端,不太实用。

4

0 回答 0