Como conectar dois computadores a um cluster H2O em Python

Sep 22 2020

Tenho dois computadores que desejo conectar a um único cluster H2O. Um tem 4 núcleos, o outro tem 6. Quando executo

h2o.init(ip = '10.0.0.89', port = 54321)

no primeiro computador, obtenho a seguinte saída:

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

Quando executo o mesmo comando no segundo computador, obtenho a mesma saída (exceto pelo tempo de atividade, é claro). O total de nós não deveria ter aumentado para 2 e o total de núcleos aumentou para 10? Estou fazendo algo errado?

Respostas

1 ErinLeDell Sep 22 2020 at 08:29

O que você está fazendo atualmente é iniciar o cluster H2O em uma única máquina e, em seguida, conectar-se a ele a partir da outra máquina (este é o cenário quando você deseja que dois usuários tenham acesso ao mesmo cluster H2O para compartilhar dados / modelos).

O que você está tentando fazer é iniciar um cluster H2O de vários nós. Não está claro se isso vai acelerar seu treinamento ou não, porque há sobrecarga de comunicação quando você usa um cluster de vários nós, então é sempre bom verificar. Se você estiver adicionando um número maior de núcleos, por exemplo, 40 + 40 para um total de 80 núcleos, eu esperaria que isso acelerasse as coisas na maioria dos casos, mas adicionar 4 a 6 pode não ajudar muito (eu só quero enfatizar que é bom testar a velocidade de treinamento no cluster de máquina única de 6 núcleos versus cluster de 10 núcleos de vários núcleos). Existem instruções para isso no guia do usuário H2O aqui . Também há um FAQ sobre clusters H2O aqui . Se os documentos não forem claros o suficiente, por favor me avise (estou percebendo que é um pouco esparso em exemplos / informações).

Por último, se você deseja usar especificamente o Amazon EC2 para cluster, há mais informações sobre isso aqui .