Maneira fácil de usar opções paralelas das funções scikit-learn no HPC
Em muitas funções, o scikit-learn implementou uma paralelização amigável. Por exemplo, emsklearn.cross_validation.cross_val_score
você apenas passa o número desejado de trabalhos computacionais emn_jobs
argumento. E para PC com processador multi-core, ele funcionará muito bem. Mas se eu quiser usar essa opção no cluster de alto desempenho (com o pacote OpenMPI instalado e usando o SLURM para gerenciamento de recursos)? Como eu seisklearn
usajoblib
para paralelização, que usamultiprocessing
. E, como eu sei (a partir disso, por exemplo,Multiprocessamento Python dentro de mpi) Programas Python em paralelo commultiprocessing
fácil de escalar oh toda a arquitetura MPI commpirun
Utilitário. Posso espalhar o cálculo desklearn
funções em vários nós computacionais usando apenasmpirun
en_jobs
argumento?