Простой способ использовать параллельные опции функций scikit-learn на HPC
Во многих функциях из scikit-learn реализовано удобное распараллеливание. Например вsklearn.cross_validation.cross_val_score
Вы просто передаете желаемое количество вычислительных заданий вn_jobs
аргумент. А для ПК с многоядерным процессором это будет работать очень хорошо. Но если я хочу использовать такую опцию в высокопроизводительном кластере (с установленным пакетом OpenMPI и использованием SLURM для управления ресурсами)? Насколько я знаюsklearn
использованияjoblib
для распараллеливания, который используетmultiprocessing
, И, как я знаю (из этого, например,Многопроцессорность Python в mpi) Python программы, распараллеленные сmultiprocessing
легко масштабировать всю архитектуру MPI сmpirun
полезность. Могу ли я распространять вычисленияsklearn
функции на нескольких вычислительных узлах, просто используяmpirun
а такжеn_jobs
аргумент?