Cómo conectar dos computadoras a un clúster H2O en Python
Tengo dos computadoras que quiero conectar a un solo clúster de H2O. Uno tiene 4 núcleos, el otro tiene 6. Cuando ejecuto
h2o.init(ip = '10.0.0.89', port = 54321)
en la primera computadora, obtengo el siguiente resultado:
H2O cluster uptime: 1 minutes 56 seconds 846 milliseconds
H2O cluster version: 3.8.2.3
H2O cluster name: H2O_started_from_python_samerens_dii030
H2O cluster total nodes: 1
H2O cluster total free memory: 3.4 GB
H2O cluster total cores: 4
H2O cluster allowed cores: 4
H2O cluster healthy: True
H2O Connection ip: 10.0.0.89
H2O Connection port: 54321
H2O Connection proxy: None
Python Version: 3.7.4
Cuando ejecuto el mismo comando en la segunda computadora, obtengo el mismo resultado (excepto por el tiempo de actividad, por supuesto). ¿No deberían haber aumentado el total de nodos a 2 y el total de núcleos a 10? Estoy haciendo algo mal?
Respuestas
Lo que está haciendo actualmente es iniciar el clúster H2O en una sola máquina y luego conectarse a él desde la otra máquina (este es el escenario en el que desea que dos usuarios tengan acceso al mismo clúster H2O para compartir datos / modelos).
Lo que está intentando hacer es iniciar un clúster H2O de varios nodos. No está claro si esto acelerará su entrenamiento o no porque hay una sobrecarga de comunicación cuando usa un clúster de múltiples nodos, por lo que siempre es bueno verificarlo. Si está agregando una mayor cantidad de núcleos, por ejemplo, 40 + 40 para un total de 80 núcleos, esperaría que eso acelere las cosas en la mayoría de los casos, pero agregar 4 a 6 podría no ayudar mucho (solo quiero enfatizar que es bueno probar la velocidad de entrenamiento en el clúster de máquina única de 6 núcleos frente al clúster de múltiples núcleos de 10 núcleos) Hay instrucciones para eso en la guía del usuario de H2O aquí . También hay preguntas frecuentes sobre los clústeres de H2O aquí . Si los documentos no son lo suficientemente claros, hágamelo saber (me doy cuenta de que es un poco escaso en ejemplos / información).
Por último, si desea utilizar específicamente Amazon EC2 para la agrupación en clústeres, hay más información al respecto aquí .