Распределенная работа "hello_world" с HPX - Ubuntu 18.04: как? - PullRequest
0 голосов
/ 13 марта 2019

После git-клонирования последнего стабильного выпуска hpx, его сборки и установки я протестировал выполнение одного узла на простом примере:

marco@pc01:~/CplusplusGoodCodeExamples/hpxExamples/quickstart$ g++ -std=c++17
fibonacci.cpp -ofibonacci `pkg-config --cflags --libs hpx_application` 
-lhpx_iostreams -DHPX_APPLICATION_NAME=fibonacci
marco@pc01:~/CplusplusGoodCodeExamples/hpxExamples/quickstart$ ./fibonacci
fibonacci(10) == 55
elapsed time: 0.002001 [s]

riccardo@riccardo-HP-Laptop-15-da0xxx:~/hpx/examples/quickstart$ g++ 
-std=c++17  fibonacci.cpp -ofibonacci `pkg-config --cflags --libs    
hpx_application` -lhpx_iostreams -DHPX_APPLICATION_NAME=fibonacci
riccardo@riccardo-HP-Laptop-15-da0xxx:~/hpx/examples/quickstart$ ./fibonacci
fibonacci(10) == 55
elapsed time: 0.004149 [s]

Я сейчас пытаюсь запустить свой самый первый "hello_world " распределенная работа с HPX между ПК, с Ubuntu 18.04.01 Server Edition и ноутбуком, с Ubuntu 18.04.02 Desktop, которые уже подключены в виде микрокластеров (работает mpich).

Я установил на обоих узлах также slurm-wlm, чьи файлы /etc/slurm-llnl/slurm.conf я прикрепил здесь (они называются различимым образом: slurm_pc0.conf, slurm_riccardohp.conf): slurm_pc0.conf , slurm_riccardohp.conf

Я поместил в общий каталог / зеркало:

riccardo@riccardo-HP-Laptop-15-da0xxx:~$ df -h
192.168.1.7:/mirror           371G   23G  333G   7% /mirror

исполняемый файл hello_world.

Просто выполняя его на ПК, это вывод:

marco@pc01:/mirror$ ./hello_world
hello world from OS-thread 0 on locality 0
hello world from OS-thread 1 on locality 0
hello world from OS-thread 3 on locality 0
hello world from OS-thread 2 on locality 0

Следуя указанным здесь указаниям: hpx-minimal-two-node-example-set-up-StackOverFlow,

Я запускаю hello_world в общем каталогеectory in pc:

marco@pc01:/mirror$ ./hello_world --hpx:localities=2 
--hpx:agas=192.168.1.7:7910 --hpx:hpx=192.168.1.7:7910

, но при работе в ноутбуке:

riccardo @ riccardo-HP-Laptop-15-da0xxx: / mirror $ ./hello_world --hpx: agas =192.168.1.7:7910 --hpx: hpx = 192.168.1.5: 7910 --hpx: работник ./hello_world: ошибка поиска символа: ./hello_world: неопределенный символ: _ZN3hpx23hpx_check_version_1u_3uE

Важное обновление:

Важное обновление: *1033*1034 * Я уничтожил предыдущие установки как на ПК, так и на ноутбуке, загрузил и установил в них оба HPX V1.2.1 HPX-Downloads

Теперь, после выполнения вПК:

marco@pc01:/mirror$ ./hello_world --hpx:localities=2 --hpx:agas=192.168.1.7:7910    
--hpx:hpx=192.168.1.7:7910

и в ноутбуке:

riccardo@riccardo-HP-Laptop-15-da0xxx:/mirror$ ./hello_world --hpx:agas=192.168.1.7:7910     
--hpx:hpx=192.168.1.5:7910 --hpx:worker

при выполнении этого последнего оператора в ноутбуке ПК выводит:

marco@pc01:/mirror$ 
hello world from OS-thread 0 on locality 0
hello world from OS-thread 2 on locality 0
hello world from OS-thread 3 on locality 0
hello world from OS-thread 1 on locality 0
hello world from OS-thread 3 on locality 0
hello world from OS-thread 2 on locality 0
hello world from OS-thread 1 on locality 0
hello world from OS-thread 0 on locality 0

и ноутбуквыходные данные:

riccardo@riccardo-HP-Laptop-15-da0xxx:/mirror$ ./hello_world --hpx:agas=192.168.1.7:7910     
--hpx:hpx=192.168.1.5:7910 --hpx:worker
hello world from OS-thread 0 on locality 1
hello world from OS-thread 1 on locality 1
hello world from OS-thread 1 on locality 1
hello world from OS-thread 0 on locality 1

Итак, кажется, что HPX V1.2.1 в ноутбуке и HPX V1.2.1 в ПК каким-то образом связаны, но они выполняют пример hello_world в «автономном» режиме:я прав или нет?

Какие пропущенные шаги необходимы, чтобы программа напечатала привет мир?сообщение в каждом потоке ОС в каждой местности, как в примере Удаленное выполнение с действиями: Hello world ?

hello world from OS-thread 1 on locality 0
hello world from OS-thread 1 on locality 1
hello world from OS-thread 0 on locality 0
hello world from OS-thread 0 on locality 1
...