У меня постоянно возникают проблемы с многоядерным пакетом
и большими объектами. Основная идея заключается в том, что я использую функцию Bioconductor ( readBamGappedAlignments
) для чтения больших объектов. У меня есть символьный вектор имен файлов, и я использовал mclapply
, чтобы перебирать файлы и считывать их в список. Функция выглядит примерно так:
objects <- mclapply(files, function(x) {
on.exit(message(sprintf("Completed: %s", x)))
message(sprintf("Started: '%s'", x))
readBamGappedAlignments(x)
}, mc.cores=10)
Однако я продолжаю получать следующую ошибку: Ошибка: сериализация слишком велика для сохранения в необработанном векторе
. Однако кажется, что я могу читать те же файлы в одиночку без этой ошибки. Я нашел упоминание об этой проблеме здесь , без разрешения.
Любые предложения по параллельному решению приветствуются - это нужно делать параллельно. Я мог бы смотреть в сторону снега, но у меня есть очень мощный сервер с 15 процессорами, 8 ядрами каждый и 256 ГБ памяти, на котором я могу это делать. Я предпочитаю делать это на этой машине по ядрам, а не использовать один из наших кластеров.