Мне нужно загрузить несколько файлов формы в мою сессию R. В настоящее время я загружаю каждый файл формы отдельно. Это работает, но это занимает много времени и использует только 15% моего доступного процессора. Недавно я попытался загружая файлы формы, используя ForEach и DoParallel:ForEach и DoParallel используют всю мою оперативную память?
require(foreach)
require(doParallel)
require(rgdal)
files <- c(
"AHVENANMAA/AHVENANMAA",
"ETELA-KARJALA/ETELA-KARJALA",
"ETELA-POHJANMAA/ETELA-POHJANMAA_1",
"ETELA-POHJANMAA/ETELA-POHJANMAA_2",
"ETELA-SAVO/ETELA-SAVO_1"
)
registerDoParallel(cores = 8)
listOfCurrentProvinces <- (
foreach(
x = files,
.packages = "rgdal",
.inorder = FALSE
) %dopar%
readOGR(x, layer = "DR_LINKKI")
)
Этот метод работает и очень быстро (он использует 100% моего процессора). Тем не менее, он использует слишком много памяти, особенно когда я повторяю этот процесс много раз. Есть ли способ, которым я могу использовать ForEach и DoParallel без какого-либо серьезного удара памяти? Моя машина имеет 8 процессоров (4 физических и 4 логических) и имеет 16 ГБ оперативной памяти.
Прочитать [ЭТО] (http://stackoverflow.com/questions/37750937/doparallel-package-foreach-does-not-work-for-big-iterations-in-r) – 989