boinc

Доброго времени суток.
Обращаюсь ко всем линуксоводам, участвующим в распределенных вычислениях.
На винде использую boinc, вер 5.10.28, все ОК
Решил попробовать этого зверя на gentoo.
В портажах есть только одна версия boinc-6.4.5-r2
Размаскировал,поставил.
USE - флаги: X -cuda -server
запускаю консольного клиента boinc_client, пишет, что не присоединен ни к какому проекту, вроде все нормально.
запускаю GUI-клиента, и тут ОПС! : стартует само окно, оч похожее на вин-версию, и говорит
НЕТ СВЯЗИ С LOCALHOST
соответственно, не дает делать абс. ничего.

Ладно, попробовал изменить USE: X server -cuda
он тащит за собой mysql

Вопрос: кто-нибудь юзал этого зверя и что из этого вышло?
P.S. Вопрос 2: зачем ему может быть нужен mysql, врятли на нем можно поднять сервер распределенных вычислений...
Или все-таки можно?
P.P.S. Описание USE-флагов с http://gentoo-portage.com/sci-misc/boinc/USE#ptabs

USE Flags
X
Global: Adds support for X11
cuda
Global: Use nvidia cuda toolkit for speeding up computations
Local: Use nvidia cuda toolkit for speeding up computations. NOTE: works only for subset of nvidia graphic cards so make sure your card is supported before opening bug about it.
server
Global: Installs scripts to be used on the server-side of this app
Local: Enable compilation of server

я уже пару лет пользуюсь

я уже пару лет пользуюсь boinc для проекта SETI. Правда, последние месяца 3 приостановил принятие заданий, т.к. жаридла в кабинете, а раскалённый проц особо прохлады не добавляет. Ближе к зиме подключусь опять.

boinc в gentoo ставится без проблем. Работает в режиме демона (см /etc/init.d/boinc)

А теперь про USE-флаги:

server - собрать сервер для обработки данных на этом компе, т.е. - само ядро boinc. Это должно быть включено
X - собрать gui-клиент для сервера boinc (/usr/bin/boinc_gui)

т.е. - нужно собрать с указанными флагами, чтобы иметь полноценный boinc на борту.

я до последнего времени использовал версию 6.4.5-r2

Так вот - для того, чтобы присоединиться к проекту под boinc, нужно запустить его демон

host ~ # /etc/init.d/boinc start

посмотреть его пароль:

grog ~ # cat /var/lib/boinc/gui_rpc_auth.cfg
xxxxмногоxxцифрxиxпрочего

и подключиться через boinc_gui к localhost, указав ранее узнанный пароль в окне подключения.

А дальше - всё точно так, как и в оффотопике - мастер подключения с кофе и всё такое.

PS: не забыть поставить boinc в системный автозапуск:

host ~ # rc-update add boinc default

Большое спасибо, буду вечером

Большое спасибо, буду вечером пробовать...

Извиняюсь за оффтоп, но

Извиняюсь за оффтоп, но пришла в голову идея распаралеливать компиляцию в генту подобным образом как в BOINC. Было бы здорово! Возможно ли это и не существует ли чего-нибудь уже подобного?

emerge distcc

emerge distcc

Хочется по принципу BOINC,

Хочется по принципу BOINC, чтобы был некоторый сервис, к которому пользователи генту могли подключаться и компилить свои системы. Чтобы можно было зайти на сайт зарегистрировать аккаунт, и добровольно помогать компиляцией во время простоя системы, чтобы была статистика кто сколько и т. д. вообщем все как у них там:) Вплоть до того что инструменты для сборки были бы и для Windows, Mac. Понимаю что не просто в реализовать такое но было бы просто супер, тем более что долгое время сборки пакетов в генту это основная пожалуй проблема.

Коротко:Через портаж

Коротко:
Через портаж (палудис не лучше в этом плане, я проверял) на данный момент это невозможно без очень-очень-очень через-задне-лево-ухих хаков, вроде вызовов emerge через ssh, генерации бинарных пакетов, закачивания их к себе, распаковки и т.п. и т.д. Я побывал это делать, получается очень криво и нестабильно.

Чтобы можно было это сделать адекватно - надо писать новый пакетный менеджер, фактически, который будет на это ориентирован (либо серьезно патчить сам код портажа, но т.к. требуется большая производительность (с питоном тут каши не сваришь) и, в идеале, независимость от клиентской машины, построение всяких очередей и прочего, проще, все же, имхо, написать новый)

P.S. Это один из "мега-проектов" которые я держу в голове и периодически начинаю обдумывать аспекты реализации, но пока у меня руки не доходят, и врядли в скором времени дойдут =). Если есть большое желание - можно организовать что-нить вроде ветки тут/мейл-листа и попробывать разработать полноценное ТЗ на подобную систему, с описанием алгоритмов, протоколов и т.п. Это тоже очень серьезная работа, но она многократно облегчит последующую разработку и привлечет многих разработчиков

P.S.S. Может показаться, что я не о том. но на самом деле о том - при наличии одного такого сервера, сделать сервер-супервизор, который
будет распределять задания по машинам-участникам будет уже не так сложно.

P.S.S.S. А сделать "распределенный distcc" - крайне проблематично ввиду разницы в архитектурах/инструкциях, ну и вообще ввиду врожденных багов Makefile'ов отдельных проектов и генкода отдельных разработчиков. Паралеллизация gcc малореальна в принципе. Так что возможна только система в которой единица - билдсервер с по пакетной/группо-пакетной очередью

NightNord написал(а): можно

NightNord написал(а):
можно организовать что-нить вроде ветки тут/мейл-листа

GLEP

/

NightNord написал(а):
можно ... попробовать разработать полноценное ТЗ на подобную систему, с описанием алгоритмов, протоколов и т.п. Это тоже очень серьезная работа, но она многократно облегчит последующую разработку и привлечет многих разработчиков

Как там с привлечением --- не знаю.
А что сильно облегчит жизнь в процессе реализации --- однозначно!

ЗЫ: И (строго обязательно) оформить всё это дело в строгом соответствии с заветами доктора Кнута :)))

:wq
--
Live free or die

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".