У меня есть функция myfunction1
, которая вызывается с parLapply
и кластер из 4 ядер. Внутри myfunction1
есть еще одна parLapply
, которая вызывает другую функцию с кластером из 7 ядер.
Структура кода будет выглядеть следующим образом:
myfunction1 <- function (x) {
# Some Code ....
# Then calls another function with parLapply
cl <- makeCluster(getOption("cl.cores", 7))
y <- parLapply(cl, 1:2, someOtherFunction)
# Some Code...
}
# Call myfunction1 with 4 cores with parLapply
cl <- makeCluster(getOption("cl.cores", 4))
a <- parLapply(cl, 1:2, myfunction1)
Сколько ядер будет использовать мой ноутбук с 8 ядрами (4 физических ядра + 4 логических ядра)? Обычно 4 ядра, но когда вызывается someOtherFunction
, он будет использовать 7 ядер (и если это произойдет, приостановит ли он другие процессы с 4 ядрами, где вызывается myfunction1
, или он просто будет использовать оставшиеся незанятые ядра?) ?