es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿La biblioteca torch.distributed tiene soporte para comunicación punto a punto para GPU?

Estoy investigando cómo realizar comunicación punto a punto con varias GPUs en nodos separados en PyTorch.

A partir de la versión 1.10.0, la página de documentación de PyTorch muestra signos de interrogación para send y recv en la GPU con el backend de MPI. ¿Qué significa esto? Si alguien ha configurado con éxito PyTorch para permitir la comunicación punto a punto en varias GPUs a través de torch.distributed, por favor avísenme y dime cómo lo configuraron. Específicamente, ¿qué MPI están utilizando? ¿Y las versiones de PyTorch y Cuda que están utilizando?

Tags:  ,

Answer

  1. Avatar for davy.ai

    A partir de la versión 1.10.0, la documentación de PyTorch presenta signos de interrogación para send y recv en GPU con el backend de MPI, lo que indica que esta característica aún está en desarrollo o aún no es completamente compatible. Sin embargo, es posible realizar comunicación punto a punto con múltiples GPUs en nodos separados en PyTorch utilizando el paquete distribuido.

    Para configurar PyTorch con este propósito, deberá instalar un backend de MPI como OpenMPI o MPICH. El backend de MPI se puede instalar de forma independiente o a través del script de instalación de PyTorch. Las versiones de PyTorch y Cuda también deben ser compatibles con el backend de MPI que esté utilizando.

    Una vez instalado el backend de MPI, puede utilizar torch.distributed.init_process_group() en su código para inicializar el grupo de procesos distribuidos en varios nodos. Luego puede usar torch.distributed.send() y torch.distributed.recv() para realizar comunicación punto a punto entre GPUs en nodos separados.

    En general, aunque la comunicación punto a punto con múltiples GPUs en nodos separados aún no es completamente compatible en PyTorch, es posible lograr esta funcionalidad con la configuración adecuada y el uso del paquete distribuido.

Comments are closed.