параллельная python не обнаруживает рабочие узлы - PullRequest
0 голосов
/ 19 апреля 2020

Я пытаюсь реализовать базовый пример c pp, как показано ниже ( SCRIPT1 ).

import pp

ppservers = ("*",)  # autodiscovery mode on!

# create the job server
job_server = pp.Server(ppservers=ppservers)

for computer, cpu_count in job_server.get_active_nodes().iteritems():
    print "Found {} with CPU count {}!".format(computer, cpu_count)

Сведения о среде
ОС: windows10
python версия: 2.7 (на машине 1 и машине 2)
машина1 IP: 192.168.1.4
машина2 IP: 192.168.56.1

Шаги выполняются до теперь :

  1. machine1 и machine2 подключены к одной сети с помощью wifi
  2. SCRIPT1 размещен на machine1 (machine1 - сервер заданий)
  3. установил pp на machine2 (рабочий узел) и запустил сервер на machine2 (порт 60000), используя

     python ppserver.py -a
    
  4. triggered SCRIPT1 на machine1, выходной сигнал машины 1 показан ниже

Found local with CPU count 8!

Но выходной сигнал на шаге 4, как ожидается, также обнаружит аппарат 2 и покажет выходной сигнал как

Found 192.168.56.1:60000 with CPU count 2!
Found local with CPU count 4!

A newb ie к параллельным вычислениям, как мне отладить это? Цените любые любопытные указатели за это.

1 Ответ

0 голосов
/ 20 апреля 2020

Брандмауэр и virtualBox был проблемой.

Шаги, чтобы добраться до исправления:

  1. ping xxx.xxx.x.x. (machine1 IP)
  2. запустить ppserver на тот же machine1 и посмотрите, может ли сервер заданий перечислить тот же machine1, что и рабочий узел

, если проблема связана с 1 и 2, это в основном вызвано межсетевым экраном, в этом случае добавьте правило для входящего порта для требуемого порта и продолжить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...