Добровольные вычисления


Добровольные вычисления (англ. Volunteer computing) — распределённые вычисления с использованием предоставленных добровольно вычислительных ресурсов. Современные вычислительные системы для добровольных вычислений строятся на базе грид-систем.

С появлением и бурным развитием Интернета всё большую популярность стала получать идея добровольного использования для организации распределённых вычислений компьютеров простых пользователей, соединённых через Интернет. В 1994 году Дэвидом Джиди была предложена идея по организации массового проекта распределённых вычислений, который использует компьютеры добровольцев — SETI@home[1]. Научный план проекта который разработали Дэвид Джиди и Крейг Каснофф из Сиэтла был представлен на пятой международной конференции по биоастрономии в июле 1996 года[2].

28 января 1997 года стартовал конкурс RSA Data Security на решение задачи взлома методом простого перебора 56-битного ключа шифрования информации RC5. Благодаря хорошей технической и организационной подготовке проект, организованный некоммерческим сообществом distributed.net, быстро получил широкую известность[3].

17 мая 1999 года стартовал SETI@home на базе грид-вычислений, а в начале 2002 года завершилась разработка Калифорнийского университета в Беркли открытой платформы BOINC (Berkeley Open Infrastructure for Network Computing), разрабатываемой с апреля 2000 года первоначально для SETI@Home, но первым на платформе BOINC стал проект Predictor@home, запущенный 9 июня 2004 года.

Такие проекты распределённых вычислений в Интернете, как SETI@Home и Folding@Home обладают не меньшей вычислительной мощностью, чем самые современные суперкомпьютеры. Интегральная производительность проектов на платформе BOINC по данным на 17 декабря 2016 года составляет 28,7 петафлопс[4]. Для сравнения, пиковая производительность самого мощного суперкомпьютера (на 2016 год) Sunway TaihuLight — 93 петафлопс[5]. До середины 2011 года самым мощным суперкомпьютером являлся Тяньхэ-1А с производительностью «всего» 2,57 петафлопс[6]. Проект отмечен в Книге рекордов Гиннесса как самое большое вычисление[7].

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