PIG, Plataforma para la Investigación con GPUs
Un proyecto de colaboración interinstitucional de la Comunidad de Supercómputo de CUDI
La Plataforma para la Investigación con GPUs (PIG) es un proyecto de colaboración interinstitucional de la Comunidad de Supercómputo en la Corporación Universitaria para el Desarrollo de Internet (CUDI), que tiene como principal objetivo agrupar infraestructura de GPUs distribuida en diferentes instituciones miembros de la Red Nacional de Educación e Investigación (RNEI) Mexicana, bajo una misma plataforma basada en contenedores que permita compartir recursos de manera segura y sencilla.
Los últimos avances en el Ámbito de la Inteligencia Artificial han hecho notable que la infraestructura de cómputo especializada, (como lo son los GPUs), es una herramienta necesaria para el desarrollo de la ciencia. Lamentablemente debido a su costo, muchas instituciones académicas no cuentan con este tipo de herramientas. Por otro lado, una problemática común, en aquellas instituciones que sí cuentan con dicha infraestructura, es el poco uso que se le puede dar debido a dos factores principales:
1. La falta de personal capacitado para administrar y mantener dichos recursos.
2. Durante el desarrollo de las aplicaciones que utilizan estos recursos, se dedica más tiempo al análisis y corrección de errores, que a la ejecución de las aplicaciones, dejando así una importante cantidad de tiempo muerto que podría ser utilizado por alguien más.
Tomando en cuenta lo anterior, se hace evidente que compartir este tipo de infraestructura es altamente deseable. En el modelo actual, donde diferentes instituciones tienen diferentes métodos para acceder a sus recursos así como diferentes reglas y políticas, esto propone un gran reto para los usuarios quienes tienen que aprender y adaptarse a cada nuevo sistema que deseen utilizar. Desde el punto de vista de las instituciones, el reto viene de las vulnerabilidades añadidas al dar acceso a usuarios fuera de su institución.
PIG propone una plataforma para compartir infraestructura. Que sea administrada y gobernada por la comunidad de instituciones que la conforman y que promueva la colaboración inter-institucional. Una herramienta para que los estudiantes e investigadores puedan experimentar el uso de múltiples GPUs de manera segura y sencilla.
Objetivos Particulares:
- Agrupar y compartir la infraestructura de GPUs existente en diversas instituciones.
- Crear una interfaz única de usuario para acceder a los recursos de las diferentes instituciones participantes.
- Utilizar una plataforma basada en contenedores para incrementar la reproducibilidad de la ciencia.
- Promover la colaboración inter-institucional para el aprovechamiento de la infraestructura y la formación de talento humano altamente capacitado.
- Promover la participación multi-institucional en la administración y gobernabilidad de la plataforma
Antecedentes
El proyecto inició en 2020, cuando se buscaba la colaboración de México en el Proyecto “Pacific Research Platform (PRP)” liderado por La Universidad de California en San Diego (UCSD).
Debido a la escasez de fondos para adquirir el equipo de cómputo necesario, se decidió crear un cluster piloto a partir de infraestructura voluntaria. La finalidad de este proyecto ”piloto” es la de demostrar la viabilidad y usabilidad de esta plataforma.
Descripción del proyecto
PIG propone una misma interfaz de usuario para acceder a los recursos de infraestructura de GPUs de las diferentes instituciones. Por otro lado, estos recursos pueden ser aislados completamente de cualquier otra infraestructura al interior de las instituciones limitando así un daño potencial de seguridad. Este proyecto abre la puerta y da un paso importante hacia la formación de colaboraciones inter-institucionales.
Estado actual.
El proyecto se encuentra en la fase piloto, con la participación de la 1) Universidad Nacional de México (UNAM), la 2) Universidad de Guadalajara (UDG), la 3) Universidad Autónoma del Estado de México (UAEMEX), la 4) Universidad Autónoma de San Luis Potosí (UASLP) y la 5) Universidad Autónoma del Estado de Morelos (UAEM), quienes están colaborando con hardware para investigar la viabilidad del proyecto. Asi mismo los recurso humanos donan su tiempo para la puesta a punto y administración de los sistemas, así como también para brindar soporte a los usuarios.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
- Plataforma de administración: Kubernetes:
- Instituciones participantes: 4
- Total de GPUs: 11
- Total de CPUs: 86
- Total de RAM(GB): 269
La comunicación entre nodos se lleva a cabo a través de una VPN.
Los usuarios interactúan con la Plataforma desde sus equipos usando el cliente de Kubernetes: kubectl. Utilizando archivos de texto en formato yaml describen la ejecución de sus trabajos.
Se cuenta con un almacenamiento central que se puede acceder, transparentemente, desde cualquier nodo de la Plataforma.
Los objetivos de la fase piloto son los siguientes:
- Contar con un nodo maestro para la administración del cluster (hecho).
- Contar con infraestructura de al menos 3 instituciones diferentes ( hecho).
- Contar con un sistema de almacenamiento (hecho).
- Contar con al menos 3 grupos de usuarios diferentes (2 de 3).
- Proveer a los usuarios de accesos restringidos (hecho)
Resultados de la fase piloto:
- Se desplegó un control plane en la UNAM para la administración del cluster.
- Se cuenta con infraestructura de 3 instituciones distintas y una está en proceso.
- 2 nodos de la UNAM
- 2 nodos de la UDG.
- 1 nodo de la UAEM
- 1 nodo de la UAEMEX
- 1 nodo en proceso de la UASLP
- Se ha habilitado un sistema de almacenamiento de 5 TB en la UNAM.
- Para hacer uso del clúster se cuenta con los siguientes grupos de usuarios.
- UNAM
- UV
- UDG
- Se proveyó a los usuarios de accesos restringidos
- Se han realizado dos capacitaciones en las que participaron la UDG y la UV
Siguientes pasos:
La siguiente fase (fase-2) deberá estar centrada en la formalización del proyecto, el aumento de su capacidad, la colaboración de más instituciones y la inclusión de más usuarios. La siguiente lista, muestra los aspectos necesarios para la continuidad del proyecto en orden de importancia.
- Obtener esfuerzo dedicado. Actualmente la administración, configuración y soporte se hace con esfuerzo voluntario de:
- Diego Dávila (UCSD/CUDI)
- Luciano Díaz (UNAM)
- Lizette Robles (UDG)
- Benjamín Hernández Valencia (UNAM)
- Octavio Valenzuela (UNAM)
- Edilberto Sánchez Moreno
- Joel González Lara (UDG)
- Formalizar los aspectos técnicos.
- Definir las políticas de uso.
- Aumentar la capacidad de cómputo y de almacenamiento.
- Atraer nuevos usuarios.