Вы находитесь здесь: distributed.ru » Проекты распределённых вычислений » Seventeen or Bust » FAQ по Seventeen or Bust
FAQ по Seventeen or Bust
Сконвертировано в Wiki из версии от 17-Oct-2004, by RM.
Что такое Seventeen or Bust?
Seventeen or Bust(SoB) — это проект распределённых вычислений, цель которого — решение задачи Серпинского. Подробнее о SoB можно почитать здесь.
Как присоединиться?
Для участия в проекте нам понадобится клиентская программа. Её размер не превышает 550 Kb (оперативной памяти во время работы эта программа будет потреблять около 4 Mb). На данный момент последняя версия 2.5.0 есть для Windows, Linux и не так давно появилась для FreeBSD, ну а для BeOS только 2.2.0 :( Скачиваем нужную с одного из трех доступных серверов.
- Регистрируемся на сайте проекта. Нужно будет ввести желаемое имя пользователя, настоящее имя (то, под которым желаем войти в историю математики ) и адрес E-Mail. Адрес желательно вводить реальный — на него будет выслан пароль.
- Проверяем почту — должно прийти письмо с именем и паролем.
- Если хотите присоединиться к какой-нибудь команде, нужно залогиниться на сайт проекта, зайти в личные настройки(»Preferences»), оттуда — на страницу »Team Affiliation», там выбрать нужную команду и нажать «Change Team».
- Теперь можно вернуться к скачанному файлу с клиентом. Устанавливаем его(кстати, используется компактный и удобный инсталлер от WinAmp'а).
- Клиент запускается и выводит окно «SB New User Signup».
Жмем «Existing User» или «Cancel», т.к. имя и пароль у нас уже есть.
- Заходим в настройки(кнопка «Config»):
-
- указываем в поле «Username» имя пользователя, выбранное при регистрации.
- Не помешает поставить галочку «Auto-start on Windows boot» — теперь клиент будет запускаться при каждом запуске Windows.
- Поскольку в клиенте пока нет функции ручной отправки результатов, стоит поставить «Retry wait» например в
60, чтобы клиент пытался отправить их раз в минуту. - Остальные настройки лучше не менять. Жмем «Save»…
- Теперь можно запускать расчёты(кнопка «Start!»). Клиент свяжется с сервером и получит от него числа
kиnдля проверки. - Обратите особое внимание на этот пункт. После получения задания, нажмите «stop», потом «exit», подтвердите выход. Потом вновь запустите клиент. Это делается для того, чтобы при следующей перезагрузке компьютера не потерялись результаты работы.
Как отправить результаты расчётов?
Возможности вручную отправить все просчитанные блоки в клиенте пока нет.
Каждый WU поделён на несколько тысяч промежуточных блоков. Если в настройках установлена галочка «Transmit intermediate blocks», клиент будет пытаться отправить каждый из них сразу после завершения, если нет — они будут складываться в очередь для отправки по окончанию всего WU. Время, необходимое для связи с сервером, составляет примерно 5 секунд. И еще. Если предположить, что компьютер работает круглосуточно семь дней в неделю и внутри него установлен процессор Pentium 4 2 ГГц., то одного WU хватит примерно на неделю.
Таким образом, есть два способа отправки результатов:
- Находиться в Интернете в момент завершения очередного промежуточного блока. В этом случае, клиент отправит все сохранённые результаты на сервер.
- Вообще не заниматься отправкой промежуточных блоков, а просчитывать и отправлять WU целиком. Когда WU будет полностью просчитан, клиент будет пытаться отправить его при каждом запуске (либо, через интервал указанный в пункте «Retry Wait» настроек). Для отправки можно будет просто перезапустить клиент.
Как настроить клиента для работы через прокси-сервер?
Для этого на прокси-сервере нужно настроить «port mapping», перенаправляющий соединения напрямую на сервер SoB.
На примере WinProxy:
- Открывем страницу настроек - http://localhost:3129/admin/config.
- В разделе «Mapped Links» добавляем - «Local port: 1717, Remote host: sbp.pns.net, Remote port: 1717». (Вместо порта 1717 можно использовать также 22, 80 или 3128).
- В настройках всех клиентов SoB в локальной сети указываем вместо sb.pns.net адрес того компьютера, на котором стоит прокси-сервер.
Всё, теперь клиенты будут думать, что видят сервер напрямую.
Практически все так же делается и на другом прокси-сервере, в частности в Usergate 3.0.17.0. http://usergate.ru/
Запускаете Administrator. Выбираете вкладку Настройки - Назначение портов, жмем Добавить. Имя нового назначения можно написать SoB, Слушать IP адрес - Любой, порт указываете 1717, Адрес назначения - sb.pns.net, порт - 1717. Далее подтвердить Да и все Сохранить. После этого в настройках клиента SB в поле Host: указать вместо sb.pns.net IP-адрес или полное DNS-имя вашего прокси-сервера. Естественно, если у вас на проксе стоит брендмауэр то должен быть открыт 1717 порт.
Как перенести недосчитанный юнит на другой компьютер?
- Смотрим значения
kиnна первом компьютере(«источнике»), в конце LOG-файла:[Tue Feb 17 19:04:28 2004] restarting proth test from cache (k=28234, n=5251234) [43.5%]
- Записываем их в реестр второго компьютера(«приёмника»), по адресу »
HKEY_LOCAL_MACHINE\SOFTWARE\LhDn\sob\cache» в виде строковых значений с именами »k» и »n». Если на этом компьютере ранее стоял клиент SoB, эти значения должны будут уже существовать. - Копируем с первого на второй компьютер файл с временными данными клиента,
znnnnnnn, напримерz5251234. - Запускаем клиента на втором компьютере. Клиент должен написать «got k and n from cache» и продолжить обработку с той точки, на которой остановился расчёт на первом компьютере.
Как освободить потеряный и недосчитанный тест?
Для чего это нужно. Вообще возможны ситуации, когда случайно или по неосторожности удаляется недосчитаный тест или просто вы забыли о нем. Представьте только, что вы взяли какой то тест, но не завершили его и волею судьбы оказалось так, что это и есть то самое одно из 17 чисел какое тут ищут тысячи людей. Так вот, чтобы пройти этот самый потеряный тест повторно, потребуется пройти ВСЕ тесты по данному числу К, а уж потом если среди них не найдется искомое число будут обрабатываться потеряные тесты, это займет куда больше времени в проекте. Поэтому, желательно от такого теста принудительно отказаться. Освобождая потеряный тест вы тем самым хотя бы не тормозите весь проект в целом. В вашей статистике на вас висят в Currently pending tests все тесты какие вы взяли на обработку, среди них могут заваляться и забытые.
Чтобы это узнать, надо:
- Во-первых, залогиниться под своим именем на сайте http://www.seventeenorbust.com/login/
- Если вы это уже сделали раньше , то сразу заходите в пункт Preferences
- Там вы находите Pending Test Management и жмете click here
И что мы там видим: Каждый тест имеет свой уникальный ID, само число в формате k•2^n+1, IP адрес с которого был отослан последний отчет о состоянии теста, время когда был самый последний отчет, пройденый прогрес в числах и процентах и средняя скорость просчета данного теста. Рядом находится кнопка Expire , будте предельно осторожны с ней, не жмите просто так ее, делайте это полностью осознавая, что делаете. А нужна она как раз на тот случай, когда какой либо из тестов, взятый вами, но до конца не пройденый и вы знаете, что уже не сможете его закончить, понять это можно хотя бы по дате последнего отчета этого теста. Жмите эту кнопку напротив теста который вы хотите освободить, чтобы дать возможность другим пользователям SoB просчитать его и как можно быстрее найти эти заветные числа.
Дополнительные настройки
Установка сервиса
Если Вы хотите сделать клиент невидимым в трее или же запустить сразу несколько копий клиента(если уезжаете в отпуск), то Вам необходимо установить сервис sobsvc.exe (находится в том же каталоге, что и файл sb.exe) Первым делом необходимо установить сервис:
sobsvc.exe -i
NB: при этом не забудьте отключить в разделе «config» клиента Auto-start on Windows Boot. После этого можно приступать к самим настройкам. Не забывайте о том, что перед каждый раз перед тем как начать настраивать клиент, необходимо выгрузить сервис. После всех манипуляций не забудьте вновь его включить.
Для удаления сервиса и возврата к обычному клиенту необходимо остановить сервис и запустить
sobsvc.exe -u
Запуск одновременно нескольких копий
sobsvc -p:<num>
где <num> - число копий.
Если вы хотите, чтобы программа сама определяла, сколько копий клиента возможно запустить на данной машине, используйте:
sobsvc -o
Если вы запускаете несколько копий на нескольких процессорах используйте команду:
sobsvc -p:<num>:<aff>
где »<num>» - число копий, »<aff>» - означает следующее: 0 - каждый клиент распределяется для запуска на одном процессоре [по умолчанию]; 1 - все клиенты распределяютя для запуска на всех процессорах; 2 - половина клиентов распределятся для запуска на одном процессоре, а остальная половина распределяется на оставшихся процессорах (или на всех процессорах, если нет оставшихся).
Запуск скрытого клиента (значка не видно в трее)
sobsvc -k
Высветится строчка где написано:
Keep Icons Visible=True
или если еще раз ввести команду
Keep Icons Visible=False
Keep Icons Visible=False означает, что после перезапуска системы значка не будет видно в трее. Но если перезапустить службу, значок появится снова. Keep Icons Visible=True означает, что значок будет виден всегда, даже после перезапуска системы. Для того, чтобы гарантировано не было видно в трее, следует зайти в свойства службы и в закладке «Вход в систему» убрать галочку «Разрешить взаимодействие с рабочим столом» («Allow service to interact with desktop»). После этого, значка не будет видно в трее даже после перезапуска самой службы.
Рестарт клиента в определенное время
sobsvc -r:<military time>
Например, для ежедневной перезагрузки программы в 11 часов дня введите sobsvc -r:1100, для отмены рестартов - sobsvc -r
Запуск с абсолютно низким приоритетом
sobsvc -x
Для отмены низкого приоритета следует еще раз ввести данную команду.
Параметры настроек сервиса
sobsvc -d
Данная команда высвечивает параметры настроек сервиса, где вы можете подробно увидеть с какими параметрами запущен сервис.
Системные требования
Операционная система
На данный момент, версии клиентской программы существуют под Windows, Linux, FreeBSD и BeOS.
Центральный процессор.
Тут всё просто. Чем мощнее ваш ЦП, тем больше будет скорость подсчёта, а соответственно меньшее время завершения обсчета блока. И самое приятное более высокое место в проекте :-)
Есть одна «фишка» на процессорах Intel скорость чуть выше, чем у аналогичных AMD.
P.S. От себя добавлю, что лучше иметь, хотя бы Pentium III или аналогичные ему. Связанно это с тем, что скорость будет на столько мала, что время обсчёта блока будет около месяца. Ну и вам наверно просто надоест…
ОЗУ
SoB занимает около ~5 Mb памяти, но бывают всплески до 30Mb(очень редко). Так что даже если у вас 128Mb памяти, можете не беспокоиться.
Другие компоненты ПК
К другим компонентам ПК SoB не капризен:
Винчестер. Требует около 2Mb свободного места.
Конечно, желательно иметь подключение к глобальной сети Интернет.
Вроде бы всё.
P.S. От себя(Vano) добавлю, что желательно иметь нормальную систему охлаждения, т.к. ЦП будет загружен на все 100%
Обнаруженные числа
На данный момент обнаружено 9 простых чисел доказывающих, что соответствующие коэффициенты не являются числами Серпинского. Осталось проверить еще 8 претендентов на роль наименьшего числа Серпинского. Подробнее...


