mclapply сталкивается с ошибками в зависимости от идентификатора ядра? - PullRequest
0 голосов
/ 10 октября 2018

У меня есть набор генов, для которых мне нужно рассчитать несколько коэффициентов параллельно.Коэффициенты вычисляются внутри GeneTo_GeneCoeffs_filtered, который принимает имя гена в качестве ввода и возвращает список из 2 кадров данных.

Имея длину 100 gene_array Я выполнил эту команду с различным количеством ядер: 5, 6и 7.

Coeffslist=mclapply(gene_array,GeneTo_GeneCoeffs_filtered,mc.cores = no_cores)

Я сталкиваюсь с ошибками при разных именах генов в зависимости от количества ядер, назначенных для mclapply.

Индексы генов, для которых GeneTo_GeneCoeffs_filtered не может вернуть список фреймов данных, которые у них есть.В случае 7 ядер, назначенных для mclapply, это 4, 11, 18, 25, ... 95 элементов gene_array (каждое седьмое), а когда R работает с 6 ядрами, индексы равны 2, 8, 14 ,..., 98 (каждый 6-й) и так же с 5 ядрами - каждый 5-й.

Самое главное, что они отличаются для этих процессов, и это означает, что проблема не в определенных генах.

Я подозреваю, что может быть «сломанное» ядро, которое не может правильно запустить мойфункции и только он генерирует эти ошибки.Есть ли способ отследить его идентификатор и исключить его из списка ядер, которые могут быть использованы R?

...