Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Кластер и расспараллеливание программы  (Прочитано 6924 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Draug_narmO

  • Автор темы
  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
Здравствуйте!
Я студент 3-го курса по специальности "Информационные системы" и нам на практику дали задание, создать кластер для распараллеливания программы написанной на C.
Условиями были;
ОС Ubuntu
связывание в сеть 4-х компьютеров (1 основной и 3 для выполнение программы)
установка MPI

С Linux-ом знаком только обще и по этому хотел у Вас проконсультироваться насчет того как нам сделать!
Был бы очень признателен, если бы Вы помогли и расписали, по возможности, все по подробней и желательно по шагово. Или посоветовали сайт, либо книгу.

Заранее благодарю!

Оффлайн afon

  • Старожил
  • *
  • Сообщений: 1110
  • Drink Different!
    • Просмотр профиля
>>расписали, по возможности, все по подробней и желательно по шагово. Или посоветовали сайт, либо книгу.
Чувак, тебе лабу вашу сделать или как? Вы ж там учитесь. У-ЧИ-ТЕСЬ! Вас чему-то должны учить. А тебе пошагово написать? ИМХО это матёрейшее хамство. Одно дело, просить рассказать, дать ссылок на источники о том, как делать распараллеливание и кластеризацию и другое - просить пошагово показать.
Drink Different, Understand Computer.
Bye.

Оффлайн Draug_narmO

  • Автор темы
  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
Не надо мне лабу делать, т.к. это не лаба а задание на  проф. практику ... и единственное чему учили, это рассказывали что такое MPI ... и я прошу помочь ... просто рассказать с чего начать! И если вы не заметили, я написал, что хотябы ссылкой или названием книги помочь!

Оффлайн Protopopulus

  • Старожил
  • *
  • Сообщений: 1695
  • А чего вы так смотрите?..
    • Просмотр профиля
Вот для начала...
Если ты владеешь знаниями, то и знания владеют тобой. (с) Protopopulus

Оффлайн Draug_narmO

  • Автор темы
  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
Благодарю конечно, но это я проделывал уже не раз! ... И литература поподается лишь по RedHat и  распараллеливание програм на языке Fortran ... если бы все было так просто я бы не писал сдесь! Как пользоваться MPI и как паралелить я в теории знаю ...
Но как создать кластер на Ubuntu и как установить MPI и как это все связать чтобы работало, этого я не знаю! И все знающий гугль тут бессилен!

Оффлайн Protopopulus

  • Старожил
  • *
  • Сообщений: 1695
  • А чего вы так смотрите?..
    • Просмотр профиля
Установить проще некуда... Если интернет есть, то:
sudo aptitude install mpiА как кластеры делать - хз :)
Если ты владеешь знаниями, то и знания владеют тобой. (с) Protopopulus

Оффлайн Draug_narmO

  • Автор темы
  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
Спасибо большое, установил =) ... теперь осталось сделать класстер из всего этого железа =\ ...
Сколько ни читаю практически везде используется кластер на RedHat ... а про Ubuntu тишина ...
Буду дальше искать ...

Оффлайн Protopopulus

  • Старожил
  • *
  • Сообщений: 1695
  • А чего вы так смотрите?..
    • Просмотр профиля
Системы очень похожи. Отличаются только набором программ по умолчанию.
Если ты владеешь знаниями, то и знания владеют тобой. (с) Protopopulus

Оффлайн Leonidv

  • Новичок
  • *
  • Сообщений: 22
    • Просмотр профиля
И раскладкой каталогов.

Lifewalker

  • Гость
Хм... Я думал поиск информации и решение конструкторских задач - основной навык студента ВУЗа (будущего инженера), который он должен приобрести.
Ремесленников, которые умеют давить на кнопки по созданным инженерами рецептам готовят в других учебных заведениях. Я отстал от жизни? :(

Александръ

  • Гость
Ого, нифига себе, а из какого ты города/вуза? У нас во Владивостоке в ДВГТУ про кластеры, MPI даже не слышали. Да и Linux используют (разбираются более-менее) всего 3 человека из группы включая меня. Какой разный уровень подготовки.
ЗЫ у меня та же специальность :)

Оффлайн Draug_narmO

  • Автор темы
  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
2 Александръ, страна Казахстан, город Алматы, вуз "Туран" =) если конечно кому то это, что-то скажет =)))
2 Lifewalker, поверь ... поиск информации и решение конструкторских задач в разгаре =) ... мозг уже кипит от прочитанной литературы!


Народ, вообщем после прочтения всей литературы понял надо устанавливать PVM ... так вот ... скачал, а установить не могу ...
пишу:
~/pvm3$ sudo makeответ:
building in src
cd src; ../lib/aimk install
aimk: PVM_ROOT not defined
make: *** [s] Error 1

глобальную переменную PVM_ROOT пробивал ... причем в разных вариациях ... а зайдя в aimk нашел следующий код
бла бла бла

# if [ -d $HOME/pvm3 ]; then
# PVM_ROOT=$HOME/pvm3
# else
echo aimk: PVM_ROOT not defined >&2
exit 1
# fi

бла бла бла

подумал ... ну вроде люди нормальные, не должны были в наглую выводить сообщение о не найденном рууте, но все же решил раскоментить и пробить путь $HOME/пользователь/pvm3И один фиг...ошибка таже ...

написал просто make вот вышла куча непонятной чуши =\
:~/pvm3$ make
building in src
cd src; ../lib/aimk install
making in LINUX/ for LINUX
make[1]: Entering directory `/home/draug/pvm3/src/LINUX'
cc -O -DCLUMP_ALLOC -I../../include -DARCHCLASS=\"LINUX\" -DIMA_LINUX -DSYSVSIGNAL -DNOWAIT3 -DNOUNIXDOM -DRSHCOMMAND=\"/usr/bin/rsh\" -DNEEDENDIAN -c ../ddpro.c
../ddpro.c:89:23: error: sys/types.h: No such file or directory
../ddpro.c:90:22: error: sys/time.h: No such file or directory
../ddpro.c:91:24: error: sys/socket.h: No such file or directory
../ddpro.c:92:24: error: netinet/in.h: No such file or directory
../ddpro.c:96:21: error: strings.h: No such file or directory
../ddpro.c:98:19: error: netdb.h: No such file or directory
../ddpro.c:99:19: error: errno.h: No such file or directory
../ddpro.c:100:19: error: stdio.h: No such file or directory
In file included from ../ddpro.c:109:
../host.h:66: error: field ‘hd_sad’ has incomplete type
../host.h:74: error: field ‘hd_rtt’ has incomplete type
In file included from ../ddpro.c:112:
../task.h:62: error: field ‘t_sad’ has incomplete type
../task.h:79: error: field ‘t_utime’ has incomplete type
../task.h:80: error: field ‘t_stime’ has incomplete type
../ddpro.c: In function ‘hostfailentry’:
../ddpro.c:224: warning: incompatible implicit declaration of built-in function ‘sprintf’
../ddpro.c:273: warning: incompatible implicit declaration of built-in function ‘sprintf’
../ddpro.c: In function ‘netentry’:
../ddpro.c:404: warning: incompatible implicit declaration of built-in function ‘sprintf’
../ddpro.c:416: warning: incompatible implicit declaration of built-in function ‘sprintf’
../ddpro.c: In function ‘addhosts’:
../ddpro.c:548: warning: incompatible implicit declaration of built-in function ‘malloc’
../ddpro.c:551: warning: incompatible implicit declaration of built-in function ‘bzero’
../ddpro.c:585: warning: assignment makes pointer from integer without a cast
../ddpro.c:586: warning: incompatible implicit declaration of built-in function ‘bcopy’
../ddpro.c:586: error: dereferencing pointer to incomplete type
../ddpro.c:586: error: invalid application of ‘sizeof’ to incomplete type ‘struct in_addr’
../ddpro.c:591: warning: incompatible implicit declaration of built-in function ‘sprintf’
../ddpro.c:673: warning: incompatible implicit declaration of built-in function ‘sprintf’
../ddpro.c:676: warning: incompatible implicit declaration of built-in function ‘strcpy’
../ddpro.c:686: warning: incompatible implicit declaration of built-in function ‘strlen’
../ddpro.c: In function ‘exectasks’:
../ddpro.c:828: error: storage size of ‘now’ isn’t known
../ddpro.c:840: warning: incompatible implicit declaration of built-in function ‘malloc’
../ddpro.c:842: warning: incompatible implicit declaration of built-in function ‘bzero’
../ddpro.c:979: warning: incompatible implicit declaration of built-in function ‘sprintf’
../ddpro.c: In function ‘dm_execack’:
../ddpro.c:1112: warning: incompatible implicit declaration of built-in function ‘sprintf’
../ddpro.c: In function ‘dm_sendsig’:
../ddpro.c:1153: warning: incompatible implicit declaration of built-in function ‘sprintf’
../ddpro.c:1161: warning: incompatible implicit declaration of built-in function ‘sprintf’
../ddpro.c: In function ‘dm_htcommit’:
../ddpro.c:1369: warning: incompatible implicit declaration of built-in function ‘sprintf’
../ddpro.c:1379: warning: incompatible implicit declaration of built-in function ‘sprintf’
../ddpro.c: In function ‘dm_slconf’:
../ddpro.c:1427: warning: incompatible implicit declaration of built-in function ‘sprintf’
../ddpro.c:1436: warning: incompatible implicit declaration of built-in function ‘sprintf’
../ddpro.c:1445: warning: incompatible implicit declaration of built-in function ‘sprintf’
../ddpro.c:1457: warning: incompatible implicit declaration of built-in function ‘sprintf’
../ddpro.c:1464: warning: incompatible implicit declaration of built-in function ‘strlen’
../ddpro.c:1466: warning: incompatible implicit declaration of built-in function ‘sprintf’
../ddpro.c: In function ‘startack’:
../ddpro.c:1579: warning: incompatible implicit declaration of built-in function ‘sprintf’
../ddpro.c:1591: warning: incompatible implicit declaration of built-in function ‘sprintf’
../ddpro.c:1600: warning: incompatible implicit declaration of built-in function ‘sprintf’
../ddpro.c:1608: warning: incompatible implicit declaration of built-in function ‘strcpy’
../ddpro.c:1608: warning: incompatible implicit declaration of built-in function ‘malloc’
../ddpro.c:1608: warning: incompatible implicit declaration of built-in function ‘strlen’
../ddpro.c:1708: warning: incompatible implicit declaration of built-in function ‘sprintf’
../ddpro.c: In function ‘dm_taskout’:
../ddpro.c:2174: warning: incompatible implicit declaration of built-in function ‘sprintf’
../ddpro.c:2175: warning: incompatible implicit declaration of built-in function ‘strlen’
../ddpro.c:2180: warning: incompatible implicit declaration of built-in function ‘bcopy’
../ddpro.c: In function ‘dm_halt’:
../ddpro.c:2268: warning: incompatible implicit declaration of built-in function ‘sprintf’
../ddpro.c: In function ‘dm_mca’:
../ddpro.c:2306: warning: incompatible implicit declaration of built-in function ‘malloc’
../ddpro.c:2315: warning: incompatible implicit declaration of built-in function ‘sprintf’
../ddpro.c: In function ‘dm_htdel’:
../ddpro.c:2505: warning: incompatible implicit declaration of built-in function ‘sprintf’
../ddpro.c:2515: warning: incompatible implicit declaration of built-in function ‘sprintf’
../ddpro.c:2523: warning: incompatible implicit declaration of built-in function ‘sprintf’
../ddpro.c: In function ‘dm_hostsync’:
../ddpro.c:2549: error: storage size of ‘now’ isn’t known
make[1]: *** [ddpro.o] Error 1
make[1]: Leaving directory `/home/пользователь/pvm3/src/LINUX'
make: *** [s] Error 2


Уже и не знаю что делать ... =\ ...
литература по которой устанавливаю и настраиваю вот:
http://linux-cluster.org.ru/pvm5.php
http://skif.bas-net.by/bsuir/book_prog/node214.html

Помогите!
« Последнее редактирование: 01 Июня 2009, 09:24:05 от Draug_narmO »

Оффлайн wl

  • Старожил
  • *
  • Сообщений: 1393
    • Просмотр профиля
Вот: http://www.parallel.ru и конкретно сюда: http://parallel.ru/info/parallel/
Еще здесь можно поискать: http://people.arsc.edu/~cskills/schedule.shtml

В 2006 году там была лекция Crash Introduction to MPI, c примерами на С и Фортране.

Далее. У вас было условие
Цитировать
установка MPI
Зачем вы в PVM полезли?
PVM это другая библитека параллельных вычислений.
Если интересно, вот сравнение: http://www.google.com/search?client=opera&rls=en&q=PVM+or+MPI&sourceid=opera&ie=utf-8&oe=utf-8

Еще дальше:
Тут про уже упоминалось про пакет MPI.
Пишем в командной строке:

$ aptitude show mpi
No current or candidate version found for mpi
Package: mpi
State: not a real package
Provided by: liblam4

$ aptitude show liblam4
Package: liblam4
State: not installed
Version: 7.1.2-1.4
Priority: extra
Section: universe/libs
Maintainer: Ubuntu MOTU Developers <ubuntu-motu@lists.ubuntu.com>
Uncompressed Size: 1401k
Depends: libc6 (>= 2.4), libgcc1 (>= 1:4.1.1-21), libstdc++6 (>= 4.1.1-21)
Recommends: lam-runtime
Conflicts: lam, lam1, lam4, lam4c2
Replaces: lam, lam1, lam4, lam4c2
Provides: mpi
Description: Shared libraries used by LAM parallel programs
 LAM (Local Area Multicomputer) is an open source implementation of the Message Passing Interface (MPI) standard.

 This package provides the shared library.

Tags: role::shared-lib, special::not-yet-tagged, special::not-yet-tagged::l
Отсюда видно, что первоисточник вот: http://www.lam-mpi.org/
Внимательно рассматривая страницу и кликая в ссылки, попадаем сюда: http://www.lam-mpi.org/tutorials/
« Последнее редактирование: 01 Июня 2009, 12:00:44 от wl »
На свете феньки есть такие, брат Горацио, которых лохи просто не секут. (Шекспир, "Гамлет", вольный перевод)

Оффлайн Draug_narmO

  • Автор темы
  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
Но также есть и условие создать кластер ... вот я и вычитал что PVM для создания кластера как такового и подходит ...
Но если PVM и в правду, простите, нафиг не нужен, то тогда я буду только рад!


Спасибо wl, за книги ... скачал ... с удоволствием прочту!
« Последнее редактирование: 01 Июня 2009, 12:00:13 от Draug_narmO »

Оффлайн wl

  • Старожил
  • *
  • Сообщений: 1393
    • Просмотр профиля
Но также есть и условие создать кластер ... вот я и вычитал что PVM для создания кластера как такового и подходит ...
Но если PVM и в правду, простите, нафиг не нужен, то тогда я буду только рад!
Нафиг не нужен. http://www.lam-mpi.org/mpi/mpi_top10.php

Кластер это просто несколько компьютеров, связанных в сеть, и занятых вычислением одной задачи.
Это может быть один компьютер.

Соответственно, вам надо настроить эти компьютеры так, чтобы они могли работать вместе. Делается это средствами системы.
Для MPI-1 необходимо было настроить доступ по RSH. MPI-2 это полностью переписанная с нуля библиотека (если верить авторам стандарта). Что там необходимо сделать, разбирайтесь сами. :)
Еще, вероятно, потребуется система расписания. Я использовал Torque (или Maui, уже не помню ;) Moab - из той же серии).

Да! Вот мой труд на тему установки всего этого добра с нуля и запуска программы, это добро использующей.
« Последнее редактирование: 01 Июня 2009, 12:16:37 от wl »
На свете феньки есть такие, брат Горацио, которых лохи просто не секут. (Шекспир, "Гамлет", вольный перевод)

 

Страница сгенерирована за 0.024 секунд. Запросов: 21.