ЗДАРОВА;)
НАШЕЛ В ИНТЕРНЕТЕ В ВИКИПЕДИИ:)
Выполнение вычислений в клиенте BOINC
Добровольные вычисления (англ. Volunteer computing) — распределенные вычисления с использованием предоставленных добровольно вычислительных ресурсов. Современные вычислительные системы для добровольных вычислений строятся на базе GRID-систем.
-
С появлением и бурным развитием интернета всё большую популярность стала получать идея добровольного использования для распределённых вычислений компьютеров простых пользователей, соединённых через интернет.
В 1994 году Дэвидом Джиди была предложена идея по организации массового проекта распределённых вычислений, который использует компьютеры добровольцев — SETI@home[1]. Научный план проекта который разработали Дэвид Джиди и Крейг Каснофф из Сиэтла был представлен на пятой международной конференции по биоастрономии в июле 1996 года[2].
В январе 1996 года стартовал проект GIMPS по поиску простых чисел Мерсенна.
28 января 1997 года стартовал конкурс RSA Data Security на решение задачи взлома методом простого перебора 56-битного ключа шифрования информации RC5. Благодаря хорошей технической и организационной подготовке проект, организованный некоммерческим сообществом distributed.net, быстро получил широкую известность [3].
17 мая 1999 года стартовал SETI@home на базе Grid, а в начале 2002 года завершилась разработка Калифорнийского Университета в Беркли открытой платформы BOINC (Berkeley Open Infrastructure for Network Computing), разрабатываемой с апреля 2000 года первоначально для SETI@Home, но превым на платформе BOINC стал проект Predictor@home запущенный 9 июня 2004 года.
Такие проекты распределённых вычислений в интернете, как SETI@Home и Folding@Home обладает не меньшей вычислительной мощностью, чем самые современные суперкомпьютеры. Интегральная производительность проектов на платформе BOINC по данным на 16 мая 2010 года составляет 5,2 петафлопс [4]. Для сравнения, пиковая производительность самого мощного суперкомпьютера («K», Япония) — 8,16 петафлопс [5]. До середины 2011 года самым мощным суперкомпьютером являлся Тяньхэ-1А с производительностью «всего» 2,57 петафлопс [6]. Проект отмечен в Книге рекордов Гиннеса как самое большое вычисление [7].
На сегодняшний день для упрощения процесса организации и управления распределёнными вычислениями создано несколько программных комплексов, как коммерческих, так и абсолютно бесплатных (см. ссылки).
[править] Участие в проектах распределённых вычислений
[править] Общая схема участия
Общая схема участия в том или ином проекте распределённых вычислений выглядит так: потенциальный участник загружает клиентскую часть программного обеспечения под свою операционную систему, устанавливает, настраивает и запускает её. Клиент периодически обращается к серверу проекта — запрашивает у него данные для обработки и отправляет результаты. При этом клиент выполняется с наименьшим приоритетом (приоритетом простоя (англ.)) и не мешает основной работе.
[править] Привлечение и мотивация участников
Существует несколько методов привлечения участников в проекты распределённых вычислений. Прежде всего это реклама, в том числе на вебсайтах по смежной проекту тематике. Почти каждый проект старается заинтересовать потенциальных участников описанием важности решаемой задачи и последующего применения результатов её решения в реальной жизни. Здесь, безусловно, большую выгоду могут извлечь проекты, у которых такие приложения есть (например, поиск лекарств и другие биомедицинские проекты).
Многие проекты создают среду для соревнования участников по объёму проделанных вычислений, как в личном, так и в командном зачёте. Вероятно, стимулом для участия в таких проектах является возможность «похвастаться» перед другими участниками доступными вычислительными ресурсами. Немаловажным фактором здесь является наличие подробной и красиво оформленной статистики о проделанной участниками работе, таблиц рейтингов, форумов для обсуждения проекта и т. п. — все это образует социальную сеть для общения участников в среде единомышленников. При этом собственно цель вычислений проекта для многих из них уходит на второй план и становится не так важна, как, например, детали оформления сайта и клиентского программного обеспечения. Успешность такого подхода доказывает существование множества сайтов команд-участниц того или иного проекта (см. ссылки), которые добровольно и самостоятельно рекламируют выбранный проект и привлекают новых участников.
Некоторые проекты распределённых вычислений так или иначе финансируются и предлагают своим участникам денежное вознаграждение при достижении определённых результатов. В частности, проекты, занимающиеся поиском редких объектов (например, чисел специального вида), могут награждать конкретных участников, нашедших на своём компьютере очередной объект поиска. Такие проекты можно рассматривать как лотерею, в которой участники платят своими компьютерными ресурсами, вычисляя что-то полезное (или бесполезное), и имеют шанс выиграть приз. При этом шанс на успех прямо пропорционален вложенным мощностям — как и в лотерее: чем больше покупаешь лотерейных билетов, тем больше вероятность выигрыша.
Несмотря на то, что большинство проектов распределённых вычислений основываются на добровольном участии пользователей ПК, у рядового пользователя существует потенциальная возможность стать невольным участником того или иного проекта, клиентское ПО которого может быть установлено компьютерным вирусом. При современном уровне развития информационных технологий и сетей передачи данных такая клиентская программа на вирусной основе, не наносящая вреда информации, но занимающая вычислительную мощность компьютера, может долгое время оставаться необнаруженной.
[править] Критика проектов распределённых вычислений
Организаторами распределённых вычислений изначально заявляется безвозмездность участия всех, кто присоединяется к их проектам, а также то, что их результаты будут опубликованы. Однако проблема в том, что исходные тексты клиентских программ большинства проектов не открыты для общего доступа, а значит, конечный участник проекта не имеет возможности проанализировать работу клиентской программы — попытка дизассемблировать программу противозаконна; таким образом точно неизвестно, какими именно вычислениями на самом деле занимается клиентское ПО.
[править] Организации, участвующие в проектах распределённых вычислений
[править] Список проектов добровольных вычислений
Информация о ходе вычислений в рамках проекта Seti@home
Ниже приведен список наиболее популярных проектов распределённых вычислений в интернете. Более полный список практически всех существующих и существовавших проектов распределённых вычислений в интернете доступен на сайте Distributed Computing (англ.).
[править] Биология и медицина
- Biochemical Library — проект университета Вандербилта, основными целями которого являются выяснение структуры мембранных белков (мишени для лекарств), проектирование белков с новой структурой и функцями (фолдинг), понимание количественных отношений между химической структурой и биологической активностью (синтез лекарств).
- CommunityTSC Drug Design Optimization Lab (D2OL)[8] — проект, прекративший исследования 15 апреля 2009 года. Был разработан Институтом Детских Болезней Ротберга (англ. Rothberg Institute For Childhood Diseases). Цель проекта заключалась в поиске лекарства от туберозного склероза, для чего проводилось моделирование «кандидата» и проверка его лекарственных свойств.
- Correlizer — проект, целью которого является исследование корреляций между последовательностями в трехмерной структуры генома.
- DrugDiscovery@Home — Российский проект, фолдинг белка, скрининг баз данных биологически активных соединений.
- DNA@Home — поиск последовательностей в молекулах ДНК, отвечающих за различные гены, с использованием вероятностных алгоритмов; исследование механизма транскрипции генов с использованием молекул полимеразы; исследование ДНК бактерий, вызывающих туберкулез и бубонную чуму [9].
- evo@home — проект распределенных вычислений, целью которого является применение генетических алгоритмов для фолдинга белков.
- grid.org — проект по поиску лекарства от рака (завершен 27 апреля 2007 года вследствие его передачи в сеть World Community Grid в качестве её первого проекта).
- Find-a-Drug — проект по поиску лекарств от различных болезней путём расчёта докинга белков с различными молекулами (завершен в 2005 году).
- Folding@Home — проект по расчёту третичной структуры белков.
- Neurona@Home — моделирование поведения больших клеточных автоматов, составленных из нейронов [10].
- Proteins@home.
- Rosetta@home — вычисление (фолдинг) структуры белка с самой низкой энергией.
- World Community Grid — исследования, связанные с генетикой, а также с различными тяжёлыми заболеваниями человека. Решение научно-технических проблем, связанных с экологией, здоровьем, питанием и другими проблемами человечества.
[править] Математика и криптография
-
- a < b < c,
- НОД(a,b) = 1,
- c = a + b,
- c > rad(abc).
- По состоянию на февраль 2010 года, насчитывается более 5800 активных участников из 100 стран, с вычислительной мощностью 18,4 терафлоп (18,4 триллионов операций в секунду).[12]
- SZTAKI Desktop Grid[13] — проект, организованный венгерскими специалистами из SZTAKI — Számítástechnikai és Automatizálási Kutató Intézet (Научно-исследовательского института кибернетики и автоматизации Венгерской Академии Наук). Относится к области теории информации и помогает в изучении систем счисления. Занимается поисками матриц вплоть до 11 порядка (то есть 11 на 11 элементов), пригодных в качестве основания систем счисления. В качестве основания систем могут использоваться не только натуральные числа. Например, в двоичной системе нельзя непосредственно записать отрицательные числа и приходится вводить дополнительные условия или признаки. Данную проблему можно решить взяв за основание число «-2». Тогда при чётных степенях числа будут получаться положительные числа, а при нечётных отрицательные. Ещё более интересные математические возможности даёт использование в качестве основы не числа, а матрицы. В этом случае любой целочисленный вектор можно представить как конечное число нулей и единиц. Однако нахождение подходящих матриц дело не простое. На данный момент нет универсального и эффективного метода нахождения таких подходящих матриц. При успешном нахождении искомых систем счисления они могут найти эффективное применение в таких областях как сжатие данных, кодирование и шифрование информации. Кроме того, они интересны с геометрической точки зрения для изучения фрактальных наборов данных — одного из перспективных современных математических направлений. Несмотря на огромный объём необходимых вычислений, проект хорошо поддаётся распараллеливанию и удачно вписывается в концепцию распределённых вычислений.
- EulerNet — проект, связанный с поиском решений, подтверждающих справедливость обобщений гипотезы Эйлера.
- AndrOINC — проект, направленный на взлом криптосистемы RSA (ключ — 1024 бит) для изделий Motorola.
[править] Естественные науки
- Ideologias@Home[14] — испанский проект, целью которого являются исследования в области социальных явлений (исследуется то, как люди в определенном регионе развиваются идеологически с течением времени по отношению к новым идеям).
- Majestic-12[15] — английский проект распределенных вычислений одноименной компании, направленный на создание поисковой системы, способной составить «конкурентоспособную альтернативу Google»[16], но с более полной и глубокой базой данных проиндексированных интернет страниц. Работа Majestic-12 основана на использовании не процессорного времени, как большинство проектов распределенных вычислений, а интернет-канала пользователя, для того, чтобы его компьютер служил «сервером», собирающим информацию о различных интернет-сайтах, для предоставления поиска по ним.
- Optima@home [17] — российский проект, целью которого является поиск минимума функции в различных задачах (например, расчет атомных кластеров молекул с использованием потенциала Морзе (англ.))
- Surveill@Home [18] — проект, целью которого является мониторинг предопределенного множества web-сайтов с целью диагностики отказов и составления статистики производительности.
[править] ПО для организации добровольных вычислений
- Apache Hadoop
- BOINC — Открытая инфраструктура для распределённых вычислений Университета Беркли (Berkeley Open Infrastructure for Network Computing), распространяемая под лицензией LGPL.
- Condor (англ.)
- Globus Toolkit (англ.) — набор программ, значительно упрощающий создание и управление распределёнными вычислениями.
[править] Статистика участия в BOINC-проектах
По состоянию на 31 января 2011 года зарегистрировано 2,118,091 участников boinc-проектов, которые подключили 6,046,900 компьютеров (хостов).
Подробная статистика BOINC-проектов
|
Всего |
Активные |
Участники |
2,118,091 |
304,952 |
Хосты |
6,046,900 |
490,901 |
Команды |
90,516 |
26,325 |
Страны |
272 |
235 |
Всего очков |
418,984,972,608 |
Среднее количество очков за день (BOINC) |
992,072,560 |
Операций с плав. точкой. В среднем в секунду |
4,960,362.8 GigaFLOPS / 4,960.363 TeraFLOPS |
По данным основного сервера статистики BOINC-проектов в общем зачёте лидируют участники, зарегистрированные за США. Следом за ними идут Германия и Франция. Россия продолжает динамично развиваться, в настоящее время занимает 11-е место по сумме очков и 9-е по количеству зарабатываемых очков в день.[19]
;)
ИНТЕРЕСНЫЕ СТАТЬИ САЙТА EZOLIFE.INFO