FAQ сайта BOINC.RU

Ответы на часто задаваемые вопросы по платформе BOINC. (находится в стадии разработки)


Переводы FAQ
по проектам

LHC@Home

Einstein@Home

Научный FAQ Rosetta@Home

Rosetta@Home

 

На главную
Библиотека
Форум

Перечень вопросов:

 


Что такое распределенные вычисления?

Распределенные вычисления - это способ организации расчетов сложных и ресурсоемких задач с использованием большого числа компьютеров. При этом каждый из участвующих в вычислениях компьютеров получает небольшую "порцию" расчетов, а назад возвращает полученный результат. При подобной организации возможно с использованием значительного числа обычных ПК достичь вычислительной мощности мощнейших суперкомпьютеров.

При этом программы распределенных вычислений, устанавливаемые на компьютеры добровольцев, так называемые клиенты, написаны таким образом, что они работают с самым низким приоритетом, т.е только тогда, когда остальные программы на Вашем ПК "простаивают". А это происходит постоянно, если только у Вас не запущены какие-то ресурсоемкие программы (например игры, программы просмотра DVD или сканер антивирусов). Таким образом пользователь практически не замечает работу клиента и ему остается только периодически подключаться к Интернету для отправки результатов и закачивания новых заданий.

Вернуться к перечню вопросов.


Что такое платформа BOINC?

Первые проекты РВ представляли собой автономные программы (часто украшенные скринсейвером для визуализации процесса расчета). Пользователь устанавливал программу и считал в свое удовольствие. Однако число проектов постепенно увеличивалось и становилось все сложнее управлять ими, когда на машине их было установлено несколько. Поэтому вполне закономерным оказалось появление программы-менеджера, которая позволяла существенно упростить пользователю процесс подключения к новому проекту и свести к минимуму его проблемы по управлению несколькими проектами. Такой программой и является BOINC (Berkeley Open Infrastructure for Network Computing - разработанная в Беркли открытая программная платформа для сетевых вычислений). В настоящее время все большее число проектов распределенных вычислений работают под управлением BOINC-платформа и их называют boinc-проектами.

Вернуться к перечню вопросов.


В чем преимущество платформы BOINC?

 При работе с boinc-проектами у Вас есть возможность  все управление и контроль осуществлять из одного "контрольного центра", которым является BOINC-менеджер. В этом "центре" вы можете расставить приоритетность считаемых проектов, выделив каждому необходимую долю ресурсов, можете разрешить или запретить каким-то проектам принимать новые задания или вообще приостановить работу проекта. Вы всегда имеете возможность видеть свои результаты (сколько очков и по какому проекту Вы насчитали), причем не только в таблично-цифровой форме, но и в виде графиков. Одним "кликом" мышки Вы можете запустить обозреватель и попасть на страницу проекта, причем именно на ту, которая Вам необходима (главная страница, данные Вашей учетной записи и настройки или посмотреть результаты своей команды). Вам нет необходимости помнить когда и по каким проектам пора отправлять результаты, на соответствующих вкладках видны рассчитанные и готовые к отправке задания, а также сроки до которых их необходимо отправить. Менеджер учитывает время необходимое для окончания расчета и, при необходимости, самостоятельно начнет считать тот проект, срок выполнения заданий по которому (т.н. "дедлайн") приближается.

Вернуться к перечню вопросов.


Нужно ли при участии в каком либо проекте распределенных вычислений  быть постоянно подключенным к Интернет?

Соединение с сетью Интернет должно быть установлено только для получения новых заданий и отправки результата расчета. При этом рассчитанный результат будет храниться на Вашем компьютере до тех пор, пока Вы не подключитесь к Интернет. Таким образом, можно получить сразу несколько заданий и не подключаться к сети Интернет до тех пор, пока все они не будут рассчитаны, а затем отправить все результаты за один раз. При этом нужно контролировать срок deadline (крайнего срока), для отправки результатов до его наступления.

Вернуться к перечню вопросов.


Какой трафик ежемесячно требуется для проектов распределенных вычислений?

Размер первой закачки файлов (программа расчета и необходимые для нее файлы, которые загружаются только один раз) для каждого проекта уникален, как и размер одного задания. Информацию по каждому проекту можно узнать в описании проектов. Размер трафика за месяц зависит от выбранного Вами проекта, а, следовательно, размера одного задания, времени его расчета и количества часов в месяц, в течение которых Ваш компьютер будет рассчитывать задание. 

Вернуться к перечню вопросов.


Не занесу ли какой-либо вирус, если приму участие в проектах?

В проектах распределенных вычислений в качестве добровольцев принимает участие огромное количество людей со всего мира. Если одним из проектов начнет распространяться вирус, то об этом сразу узнает большое количество людей. За все время существования РВ не было ни одного случая распространения вирусов через сети GRID. Так же стоит учесть репутацию институтов, организующих такие проекты, которую они не хотят потерять.

Вернуться к перечню вопросов.


Существуют ли проекты, организованные российскими научными институтами?

Да, существуют. Было несколько попыток организации отечественных проектов, однако сегодня реально работает только несколько. Подробнее с этой темой можно познакомиться здесь.

Вернуться к перечню вопросов.


А стоит ли поддерживать зарубежные проекты?

При поддержке зарубежных проектов Вы помогаете не только стране, в которой расположен тот или иной научно-исследовательский институт, но и научному прогрессу и науке, в целом. Если зарубежный институт решает интересные задачи, в которых им можно помочь, то при решении их задач, в любом случае, научный прогресс ускорится. Учитывая, что в наш век информация распространяется очень быстро, а результаты большинства проектов РВ доступны для всех желающих, то ученные нашей страны так же могут использовать их для решения своих задач. Кроме того, в проведении многих исследований, в интересах которых организуются проекты РВ, задействованы и Российские исследовательские организации.

Вернуться к перечню вопросов.


Разве можно быть уверенным в том, что рассчитывается конкретным проектом? Может быть проект рассчитывает новый вид вооружения?

Каждый проект имеет свое описание: что, как, для чего считается и откуда берут исходные данные. Данные, передаваемые на Ваш ПК, также открыты и доступны для анализа. Кроме того указываются участвующие институты и люди (организаторы), чьи имена достаточно известны и вряд ли они будут портить свою репутацию, указывая некорректные данные о характере, проводимых исследований. Расчет новых видов вооружения логичнее проводить в закрытых лабораториях, чтоб не выносить данные в Интернет, даже частично. Сейчас милитаристские задачи далеко не на первом месте, все проекты в основном европейские, они менее воинственно настроены, ну и есть, например, проект IBM, в котором специальная комиссия выбирает проекты, которые достойны участия в РВ по необходимости им РВ и полезного эффекта для общества, решаемых проектом задач.

Вернуться к перечню вопросов.


Разве можно быть уверенным, что результаты работы проекта принесут реальную пользу человечеству?

Любое развитие науки и техники увеличивает объем знаний человечества о природе вещей в нашем мире. Чем большей информацией мы обладаем, тем больше процессов можем использовать в своих целях, либо контролировать их. Даже если в результате работы цель того или иного проекта не будет достигнута, то это повод задуматься о наших представлениях о мире, либо усовершенствовать средства получения результатов работы и/или исходных данных. Отрицательный результат - так же приносит пользу науке, так как только после его получения можно отбросить анализируемый вариант и начать проработку других вариантов.

Вернуться к перечню вопросов.


А что получают участники, кроме морального удовлетворения?

Принцип распределенных вычислений заключается именно в том, что участники бескорыстно жертвуют свободное время своих компьютеров. Именно этот принцип позволяет научным институтам осуществлять свои исследования и тратить освободившиеся ресурсы на модернизацию оборудования, усовершенствования методов исследований, а так же проведение других исследований. В разделе мотивация описано, что Вы можете получить, участвуя в проектах распределенных вычислений. Конечно это не так много, но решение общемировых проблем стоят того времени и средств, которые Вы потратите на участие в проектах.

Вернуться к перечню вопросов.


Как установить BOINC-менеджер (менеджер проектов)?

См. инструкцию "Как установить BOINC-менеджер".

Вернуться к перечню вопросов.


Что такое credit?

    Credit - это величина, отображающая объём произведённых  вычислений. Единица измерения - cobblestone.

 1 Cobblestone соответствует одно сотой объёма вычислений,  производимой за одни сутки компьютером, производительность которого,  согласно эталонным тестам, составляет 1 миллиард операций с плавающей точкой в секунду и 1 миллиард операций с целыми числами в секунду.

  Проще говоря:   1 Cobblestone = (1 ГигаФлоп в секунду + 1 "ГигаЦелоп" в секунду)* сутки /100.

Но есть одно "но": один и тот же юнит обрабатывает четыре  участника. И если считать credit для каждого из них, то скорее   всего (с вероятностью процентов на 99.999) они окажутся разными -  в силу самых разных причин.

Claimed Credit и Granted Credit

Поэтому в BOINC введены понятия claimed credit и granted credit.
    Claimed credit - это credit, вычисляемый каждым клиентом, закончившим обработку юнита, и являющийся оценкой выполненной работы с точки зрения конкретного компьютера. После получения трёх результатов (два нужны для того, чтобы сверить их между собой, а  третий - чтобы выбрать верный, если они не совпали), всем трём  компьютерам начисляется средний из claimed credit-ов. Он и  становится granted credit. До тех пор, пока юнит не будет  обработан тремя участниками, он ждёт своей участи - "pending unit".

  Подобная система измерения проведённых вычислений позволяет  складывать между собой credit-ы, полученные участниками и  командами в различных проектах, и приводит к созданию общего  зачёта по всем BOINC-проектам. А поскольку для правильного  подведения итогов по всем проектам, команда должна иметь  одинаковое название во всех тех, в которых она участвует, то подобная система приводит к появлению и укреплению многопроектных  команд.    Формула вычислений Claimed Credit    На сайте boinc-doc.net стоит следующая формула:

    Claimed credit = (whetstone + dhrystone)*Tвычислений/1728000.   

 Где: whetstone - скорость вычислений с плавающей точкой (FLOPS/s).  (Например - 1785 миллионов/сек).

         dhrystone - скорость вычислений с целыми числами (например - 3075  миллионов/сек).

         Tвычислений - измеряется в секундах.  Теперь давайте разберёмся, откуда взялся коэффициент 1728000:  Как уже говорилось выше, объём вычислений V0 можно записать как:     V0 = (Whetstone + Dhrystone)*T  В тоже время, согласно определению:   1 Cobblestone = (1GFLOPS/s + 1GINTOPS/s) *24 часа * 3600 секунд /100  = 2 GigaOPS/s * 24 * 3600 / 100 = 1728 GigaOPS/s Тогда, выражая объём вычислений в Cobblestones мы получим:
    V = V0/(1 Cobblestone) = (Whetstone + Dhrystone)*T/1728GigaOPS/s.Поскольку результаты бенчмарков принято записывать в миллионах  операций в секунду, то приставку Giga мы заменяет на 1000, а  миллионы операций в секунду просто отбрасываем - поскольку они  сокращаются и сверху (Whetstone + Dhrystone) и снизу (GigaOPS/s = 1000 MegaOPS/s). [ hoarfrost ]

Вернуться к перечню вопросов.


Оптимизация boinc-приложений.

   (Примечание: очень удачную инструкцию по установке оптимизированных приложений для проекта Einstein@Home составил Lexx-R . С его любезного разрешения здесь будут приведены отдельные выдержки из статьи)

 

Что такое оптимизация?

Выпускаемые разработчиками приложения рассчитаны на совместимость с различными процессорами, которые могут оказаться у пользователя. Универсальность в данном случае требует, чтобы использовались лишь стандартные наборы инструкций процессора и приложения различаются лишь по принадлежности к определенной операционной системе. Однако, с развитием технологии новые процессоры обзаводятся новыми наборами инструкций, которых не было в более ранних моделях (MMX, SSE, SSE2, SSE3, 3DNow! и т.д.).

Каждый новый набор позволяет делать некоторые виды вычислений быстрее, чем стандартным способом. Поэтому всегда возникало желание оптимизировать приложение к конкретному типу процессора, для увеличения производительности.

В виду указанных выше причин оптимизацией занялись сами пользователи. И на этом поприще энтузиасты достигли значительных успехов.

На сегодняшний день (апрель 2006 года) имеются оптимизированные варианты как самого boinc-менеджера, так и расчетных модулей для проектов SETI@Home и Einstein@Home.

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

 «Проверить, поддерживает ли ваш процессор те или иные наборы инструкций (SSE, 3DNow! и т. п.), можно при помощи специальных программ, вроде CPU-Z, RMMA и других.

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

 

Где взять оптимизированные приложения?

 Скачать оптимизированные расчетные модули можно по следующим ссылкам:

Примечание: В настоящее время оптимизированные приложения в связи со сменой версий расчетных модулей отсутствуют практически для всех проектов (указанные ссылки, в большинстве случаев не актуальны и представляют только "исторический" интерес).

Для проекта Einstein@Home

Для проекта SETI@Home

Для проекта SETI@Home Enhanced 

Для проекта SZTAKI@Home (версия 1.12)

Оптимизированный boinc-менеджер:

 

Как правильно инсталлировать оптимизированное приложение?

 «Порядок установки (на примере Einstein@Home)

1.       Скачиваете подходящее ядро

2.       Распаковываете архив (в архиве файл: “albert_4.37_windows_intelx86.exe”)

3.       Останавливаете BOINC (выходите из него/выгружаете)

4.       Переписываете файл “albert_4.37_windows_intelx86.exe” из архива в папку BOINC-проекта: “...BOINC\projects\einstein.phys.uwm.edu\”

5.       Запускаете BOINC и наслаждаетесь скоростью расчета»

Для проекта SETI@Home процесс аналогичен.

Установка оптимизированного менеджера:

«Устанавливается он просто:

  1. Останавливаете BOINC (выгружаете)

  2. Переписываете в корень папки BOINC все файлы из архива

  3. Запускаете BOINC

Оптимизированный BOINC основан на коде версии 5.3.12, однако “установка” поверх версии 5.2.13 никаких проблем не вызывает. Очки “подкручиваются” автоматически, никаких дополнительных “танцев с бубнами” устраивать не нужно. Для выхода на “нормальное” количество очков требуется сдать около 20 результатов. При этом количество очков за каждый следующий отправленный результат будет чуть больше, до достижения “нормального” количества очков.»

 

Подробности можно посмотреть в вышеупомянутой инструкции и в соответствующих темах форума: (boinc-менеджер, SETI, Einstein).

 

Вернуться к перечню вопросов.


Можно ли ограничить загрузку процессора при расчете проекта?

Можно. См. статью "Управление загрузкой процессоров в операционных системах Windows 2000 и более поздних".

 

Вернуться к перечню вопросов.


Могу ли я управлять всеми своими компьютерами с Boinc из одного управляющего центра?

Можете. Для этого предназначена программа BoincStudio. См. "Описание программы BoincStudio".

 

Вернуться к перечню вопросов.



Назад на главную страницу BOINC.RU