R-скрипты, которые запускаются только последовательно, есть ли способ распараллелить их выполнение на многоядерные?
У меня есть несколько R-сценариев, которые могут выполняться только последовательным образом, не могут быть разбиты на куски или любая параллельная библиотека для R или любой другой язык не может быть использован.
Можно ли как-то распределить последовательное выполнение кода на несколько ядер или на несколько серверов в сети? ускорить исполнение?
1 ответ
Итак, давайте предположим, что вы можете запустить:
./my_script.R arg1
И вы хотите запустить скрипт на arg1
..arg1000
, Тогда вы можете использовать GNU Parallel:
parallel ./my_script.R {} ::: arg1 arg2 arg3 .. arg1000
Это начнется один my_script.R
на поток процессора.
Если у вас есть несколько серверов в вашем распоряжении, вы можете ssh
чтобы:
parallel -Sserver1 -Sserver2 ./my_script.R {} ::: arg1 arg2 arg3 .. arg1000
Если это не отвечает на ваш вопрос, пожалуйста, уточните вашу ситуацию.