1

それで、すべてのCPUコアを使用して、Rでの並列実行にsnowfallパッケージを使用してみました。これは、テストに使用したコードです。

library(snow)
library(snowfall)
sfInit(parallel = TRUE, cpus = 16, type = "SOCK")
data <- array(1:1000000, dim=c(1000000,1))
system.time(x <- sfLapply(data, fun=function(x){return (x*x) }))

利用可能なすべての CPU コアを使用するため、実質的に 16 倍高速に実行されます。しかし、私がこれを試すと:

system.time(m2 <- J48(CHURNED_F~., data = data[, -c(1)]))

テストとして、約 50 秒かかります (データ セット全体の約 1% のみ)。

library(snow)
library(snowfall)
sfInit(parallel = TRUE, cpus = 16, type = "SOCK")
system.time(m2 <- sfLapply("CHURNED_F~.", J48, data[, -c(1)]))

間違った構文を使用しているだけですか? これを並行して実行するにはどうすればよいですか?

4

0 に答える 0