PARALLEL.RU

Дискуссионный клуб по параллельным вычислениям
Текущее время: 17 ноя 18 20:08

Часовой пояс: UTC + 4 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
 Заголовок сообщения: компиляция и выполнение (MPICH)
СообщениеДобавлено: 16 мар 10 11:00 
Не в сети

Зарегистрирован: 22 авг 06 14:56
Сообщения: 6
Откуда: Пермь
Добрый день!

На кластере установлена система управления прохождением задач МВС-1000/М. вот в чём беда:

если использовать MPICH который шел с системой запуска задач (1.2.1),
когда компилирую *.с - файлы, всё запускается без проблем, а когда *.с++ - выдает поток ошибок вида:
/common/mpich/bin/mpiCC -o hello hello.cc
hello.o(.gnu.linkonce.r._ZTVN3MPI2OpE+0x10): undefined reference to `MPI::Op::Init(void (*)(void const*, void*, int, MPI::Datatype const&), bool)'
hello.o(.gnu.linkonce.r._ZTVN3MPI2OpE+0x14): undefined reference to `MPI::Op::Free()'
hello.o(.gnu.linkonce.t._ZN4PMPI7Request4TestEv+0xa): In function `PMPI::Request::Test()':
: undefined reference to `PMPI::Request::ignored_status'

а если использовать MPICH 1.2.7, тогда и *.с и *.с++ компилируются без ошибок, запускаются на одной машине без проблем, а при параллельном запуске получаем ошибку вида:
call_batch: calling batch
p0_16788: p4_error: Child process exited while making connection to remote process on rscs_3: 0
p0_16788: (2.010726) net_send: could not write to fd=4, errno = 32
P4 procgroup file is /tmp/proclist.t16742.

исходный код на с++:
#include "mpi.h"
#include <stdio.h>

int main(int argc, char* argv[])
{

int me, size;
MPI_Init(&argc, &argv);
MPI_Comm_rank(MPI_COMM_WORLD, &me);
MPI_Comm_size(MPI_COMM_WORLD, &size);
printf("Hi, I'm process %d of %d \n", me, size);
MPI_Finalize();

return 0;
}


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: компиляция и выполнение (MPICH)
СообщениеДобавлено: 7 апр 10 16:34 
Не в сети

Зарегистрирован: 23 ноя 09 16:30
Сообщения: 19
Это не беда, это нужно просто слинковать библиотеки MPI. В вашем случае MPI++.
Не помню, но помоему что-то вроде
Код:
/common/mpich/bin/mpiCC -o hello hello.cc -lmpi++

Ну и если путь до библиотек MPI не определён в системе - то указывать его "-L/path/to/mpi/libs_dir"


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: компиляция и выполнение (MPICH)
СообщениеДобавлено: 27 май 10 2:00 
Не в сети

Зарегистрирован: 7 май 10 17:53
Сообщения: 8
Есть система с HP-UX, на системе установлен HP-MPI
вывод команды mpiCC -show
Код:
/opt/CC/bin/CC  -Wl,-L/opt/mpi/lib/pa1.1  '-ext'  -I/opt/mpi/include -lmpio -lmpi -lcl -lmpiCC -Wl,+s,-adefault

то есть скрипт mpiCC ипользует компилятор СС
к сожалению на системе не установлен компилятор СС, зато есть компилятор g++
при компиляции файла file.cpp командой
Код:
g++ -Wl,-L/opt/mpi/lib/pa1.1  '-ext'  -I/opt/mpi/include -lmpio -lmpi -lcl -lmpiCC -Wl,+s,-adefault -lpthread -o mpi file.cpp

происходит ошибка
Код:
ld: Can't find library for -lmpio
Fatal error.
collect2: ld returned 1 exit status


зы Если менять местами -lmpio и -lmpi то тогда пишет что can't find library for -lmpi


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: компиляция и выполнение (MPICH)
СообщениеДобавлено: 27 май 10 19:15 
Не в сети

Зарегистрирован: 7 май 10 17:53
Сообщения: 8
Проблема с Fatal error решилась заменой набора библиотек с lib/pa1.1 на lib/pa20_64
но возникла другая проблема: теперь при компиляции строчкой
Код:
g++ -L/opt/mpi/lib/pa20_64  -I/opt/mpi/include -lmpio -lmpi -lcl -lmpiCC -lpmpi  -lpthread  file.cpp -o mpi

возникает 5 таких ошибок
Код:
ld: Unsatisfied symbol "MPI::Comm::key_ref_map" in file /var/tmp//ccgzm9ov.o
ld: Unsatisfied symbol "MPI::Comm::mpi_comm_map" in file /var/tmp//ccgzm9ov.o
ld: Unsatisfied symbol "MPI::Comm::mpi_err_map" in file /var/tmp//ccgzm9ov.o
ld: Unsatisfied symbol "op_intercept" in file /var/tmp//ccgzm9ov.o
ld: Unsatisfied symbol "MPI::Comm::current_op" in file /var/tmp//ccgzm9ov.o
5 errors.
collect2: ld returned 1 exit status

при чем названия файлов после /var/tmp// каждый раз меняются

в чем может быть проблема?


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

Часовой пояс: UTC + 4 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB