Благие 𝕊𝔼𝕋𝕀: как использовать простаивающие мощности процессоров

Уйти в цифровую благотворительность и не перегореть на старте

В XXI веке волонтерство уходит в IT. Сегодня во благо науки и для спасения человечества можно использовать ресурсы «спящих» процессоров. Технический писатель Selectel Ульяна Малышева разобралась в теме и пообщалась с руководителями нескольких проектов добровольных вычислений.

Благие 𝕊𝔼𝕋𝕀: как использовать простаивающие мощности процессоров

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

Введение в распределенные вычисления

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

В современном мире такими «феями» для больших данных стали суперкомпьютеры. Производительность самой мощной на данный момент машины Summit может достигать 200 квадриллионов операций в секунду. Аппарат был запущен Национальной исследовательской лабораторией Министерства энергетики США в 2018 году.

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

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

Такой класс распределенных систем получил название grid (с англ. — «решетка, сеть»). Грид-системы отличаются слабой связанностью и разнородностью акторов, и именно на них основываются проекты добровольных распределенных вычислений. Участники таких проектов находятся в разных точках мира и жертвуют различные объемы производительных мощностей своих личных ПК. В сообществе их называют кранчерами (от фразы to crunch data — «вычислять данные»).

<p>Мини-словарь кранчера для тех, кто не знаком с основными понятиями добровольных распределенных вычислений.</p>

Мини-словарь кранчера для тех, кто не знаком с основными понятиями добровольных распределенных вычислений.

Год 2020-й

В 2020 году коронавирус вызвал новую волну интереса к добровольным распределенным вычислениям. Проект Folding@home, который на данный момент занимается исследованием SARS-CoV-2 (COVID-19), по суммарной производительности обошел все суперкомпьютеры, входящие в топ-500 по миру.

По состоянию на май он «насобирал» мощностей на 2,3 экзафлопса — в проект вкладывались и волонтеры, и компании. VMware не только выделил проекту вычислительные ресурсы, но и позволил подключаться к Folding@Home через платформу vSphere. А Selectel пожертвовал мощности серверов с графическими ускорителями NVIDIA® GeForce GTX 1080.

К слову, первый в мире экзафлопсный компьютер должен был появиться в 2021 году. Компания Intel обещала построить машину, производительность которой составит квинтиллион операций в секунду. В итоге мощнее распределенного «компьютера», собранного Folding@home буквально по флопсам, похоже, он уже не станет.

Не хотите читать про добровольные вычисления?

Подписывайтесь на блог Selectel.

Мы затрагиваем разные темы:

Generation П(ять) — рассказываем популярно, когда на телефонах появится значок 5G

IT-тренды 2020 — исследуем технологические тренды и предполагаем, что ждать в ближайшее время

Причины успеха

Folding@home можно назвать феноменом среди проектов добровольных вычислений. Многие из них довольствуются лишь несколькими терафлопсами «внимания». Причин такого успеха несколько.

Понятная и актуальная проблема. Коронавирус коснулся всех. Нередко проекты той же платформы BOINC критикуют за неясность исследовательской цели и сложно переносимый на жизнь результат.

Распространение информации в СМИ. Среди проектов добровольных вычислений есть звезды — SETI@home, Rosetta@home, Einstein@home. Вместе с тем, до 80-85% других инициатив не выходят за рамки форумов и своих страниц на сайте BOINC.

Информирование о результатах. Folding@home постоянно на связи с волонтерами, ученые готовы рассказывать о проделанной работе. Отсутствие новостей о проекте — одна из причин охлаждения волонтеров к добровольным вычислениям.

Кроссплатформенность. Клиент Folding@home можно скачать для Windows, macOS и целого ряда дистрибутивов Linux.

С еще с двумя частыми причинами скептического отношения к добровольным вычислениям Folding@home не справляется. Однако их нивелирует социальный вес проекта.

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

Люди хотят впечатляющих результатов. Руководители SETI@home не обнаружили инопланетян, а инициаторы Rosetta@home не открыли универсальную вакцину. Это становится аргументом в пользу признания проектов добровольных вычислений неэффективными. Но важно понимать, что наука — это про маленькие шаги и неочевидные открытия. Например, в ходе работы Einstein@home ученые гравитационные волны не зафиксировали, но как побочный эффект научились открывать новые пульсары. А расчеты проекта LHC@home серьезно помогали работе Адронного коллайдера. Любые промежуточные результаты проектов идут в работу, становятся частью научных публикаций. Просто, к сожалению, не все проекты находят время нас об этом уведомлять.

Александр Андреев, Администратор российского сайта BOINC

Значительный расход энергии. Добровольные вычисления также ругают за экономическую нерентабельность. Часто проекты рекомендуют жертвовать мощности GPU — в таких случаях work unit считается быстрее, но и энергии потребляет немало. Этот пункт, однако, становится более раздражающим, когда волонтеры теряют стимул участия в проектах.

Ответ скептикам

По данным, актуальным на 9 июня 2020 года, число активных участников платформы BOINС составляет 105 790 человек, к работе подключены 727 784 компьютера. Только за один этот день к сообществу присоединились более 70 новых добровольцев.

Участие в проектах добровольных вычислений — это не всегда про рациональность. Опросив кранчеров, выяснили, что обычно мотивирует присоединяться к инициативам, несмотря на некоторые их очевидные минусы.

Ощущение вклада в развитие науки

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

Я присоединился к BOINC примерно 9 лет назад — подключил не только ПК, но и мобильный телефон. Тогда выбрал Folding@home и Rosetta@home. Мотивировала сама идея добровольных распределенных вычислений. С минимальными затратами, буквально «с миру по нитке», можно решать научные задачи, которые в будущем улучшат жизнь человечества. Также меня раздражала мысль, что у меня в распоряжении есть крутая технология — ноутбук. Но нередко его силы уходят на запуск Chrome и загрузку Google Sheets. Хотелось придать большую ценность технологиям, зашитым в современных гаджетах. Ведь раньше на гораздо менее мощных процессорах рассчитывали полеты в космос и «640 Кб хватало всем».

Дмитрий Кострюков, Старший системный инженер Selectel, опыт кранчера — 9 лет

Получение личных бонусов и признания

Благие 𝕊𝔼𝕋𝕀: как использовать простаивающие мощности процессоров

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

Все участники проекта автоматически попадают в общий рейтинг, ранжируемый по количеству вложенных мощностей. Такие топы — стандартный для сообщества BOINC формат. Все личные достижения сохраняются навсегда, что также важно для многих людей в сообществе. Люди видят, что есть самые разнообразные вычислительные задачи, что их можно успешно решать по определенными алгоритмам. Даже небольшой вклад имеет значение и может привести к удачному результату. Хозяева компьютеров, на которых были сделаны маленькие, но значимые открытия, награждаются бейджами (каждый месяц разными).

Наталия Никитина, Научный сотрудник лаборатории телекоммуникационных систем Института прикладных математических исследований КарНЦ РАН, руководитель RakeSearch (BOINC)

Причастность к сообществу, рейтинги и гонка за кредитами

На платформе BOINC устраивают и челленджи, и целые чемпионаты. Ежегодно на ней проводится личная «Формула-1» для кранчеров — Формула BOINС, где команды соревнуются по количеству мощностей, вложенных в проекты.

Чемпионат состоит из марафона и спринтов. Марафон учитывает очки, полученные за все виды участия команд в проектах BOINC. Спринты подразумевают под собой концентрацию команд на одном проекте, о котором сообщают за 24 часа до старта спринта. Таким образом, платформа привлекает внимание сообщества ко всем инициативам, а не только к тем, в которых выгодно участвовать.

Благие 𝕊𝔼𝕋𝕀: как использовать простаивающие мощности процессоров

На BOINC есть и несколько команд из России. Одна из самых крупных — Russia Team. Сейчас в ее составе 2 388 участников, из них активных — 164. Группа российских кранчеров занимает 32 место в рейтинге, учитывающем более 100 000 команд со всего мира.

Администратор российского сайта BOINC Александр Андреев считает: «В «золотое время» распределенных вычислений в России — это примерно «нулевые» годы — создание команды было событием. Звучали планы о формировании национальной «сборной». Мы выстраивали тактику, чтобы вырваться в лидеры. Каждая уважающая себя команда имела свой сайт и форум. Конечно, всегда находятся те, кто считает, что такие соревнования ­— это антинаучно, что они подрывают саму идею добровольных вычислений. С другой стороны, состоять в какой-то группе (в играх — это гильдия, клан) — естественная социальная потребность человека».

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


Никита Кунец
, Системный администратор Selectel, опыт кранчера — 4 года

Я никогда не

Количество участников из России, которые когда-либо подключались к проектам BOINC, на момент написания текста составляет 52 547 человек. Это примерно 0,4 % от общего населения страны. Действующих участников и того меньше — этот показатель держится на уровне 1300-1400 человек. Мировая BOINC-позиция РФ на основе RAC — 33 (из 277 стран, представленных на платформе).

Очевидно, что такое волонтерство — не для всех. Более того, начинающие кранчеры нередко испытывают быстрый спад мотивации: скачали ПО, неделю «погоняли» задачи и закрыли историю.

Как не перегореть на старте и справиться с распространенными проблемами «новичков»? Составили список советов вместе с опытными волонтерами.

  • Готовьтесь к тому, что первый пользовательский опыт может быть ужасен. Перед вами перечень проектов, вы не понимаете, как в них участвовать, а их странички не отличаются приятным интерфейсом. К этому привыкаешь, когда сосредотачиваешься на пользе, которую можешь принести обществу.
  • Адаптироваться на платформе помогут сайты-агрегаторы, где представлены сразу несколько исследований из разных областей науки. Вы сможете выбрать себе один-два проекта по душе и не тратить время на изучение всех существующих инициатив.
  • Оцените свои возможности. Если вы запускаете вычисления всего на 30 минут в день, вы особо никому не поможете. Этого времени слишком мало, чтобы компьютер успел завершить поставленную проектом задачу. Промежуточные результаты не учитываются и не сохраняются. Если вы получили work unit, но компьютер не справился с расчетами за выделенное время, считайте, ваш процессор прогрел воздух впустую. Незавершенная задача просто передается другому пользователю, причем все вычисления производятся заново.
  • Выбирая проекты, обратите внимание на менее крупные. Folding@home и Rosetta@home, например, у всех на слуху. Но количество задач даже у них ограничено — вам может просто не приходить работа или приходить редко.
  • На первых порах ваш счетчик кредитов может расти слабо. Не разочаровывайтесь и не отказывайтесь от волонтерства. Отнеситесь к этому как к долгосрочной инвестиции, пробуйте разные проекты. В какой-то момент вы найдете для себя идеальную формулу «контрибуции» ресурсов и будете радоваться маленьким победам.

Мой CPU перегревался от нагрузки — AMD Ryzen 7 3700x нагревался до ~90 градусов. Как следствие — раздражающий шум системы охлаждения. Но у меня компактный корпус ПК, и компоненты я подбирал не для постоянной нагрузки. Когда задействовал графический процессор для вычислений, проблема с перегревом решилась — компьютер работал на штатных 70-75 градусах.

Андрей Крюков, Cотрудник отдела разработки и сопровождения VMware в Selectel
  • Если у домашнего ПК есть видеокарта NVIDIA, некоторые проекты могут работать на ней и вычислять намного быстрее. Еще и отапливать комнату зимой.
  • Шутки шутками, но, если ваш компьютер сильно греется, подумайте об оптимизации. По умолчанию тот же BOINC будет использовать ЦПУ на 100%. Но в настройках клиента вы можете снизить это значение, например, до более комфортных 80%. Также убедитесь, что дали разрешение на работу приложения только на время простоя процессора.
  • Хороший вариант — запускать компьютер на ночь и идти спать. Лучший — купить виртуальную машину у облачного провайдера и запустить там BOINC 24/7.

У меня поднято три хоста в Облачной платформе исключительно для вычислений BOINC. Так может сделать любой: поднять хост (даже с минимальными характеристиками 1 CPU, 2 GB RAM, 10 GB HDD), например, на Облачной платформе Selectel, и считать задачи там. Отмечу, правда, что при 1 CPU задачи будут обрабатываться не очень быстро. Настраивать работу BOINC в облаке будет чуть сложнее. В качестве инструкции рекомендую эту статью на Arch Wiki.

Никита Кунец, Cистемный администратор Selectel, опыт кранчера — 4 года

Как вычислить свой проект

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

𝕄𝕒𝕕𝕖 𝕚𝕟 ℝ𝕦𝕤𝕤𝕚𝕒

За годы реализации проекта волонтеры «посчитали» более 20 числовых рядов, связанных с ДЛК. Большинство из полученных цифр были до этого неизвестны. Результаты представляют фундаментальный интерес для математики.

Эдуард Ватутин,

Доцент Юго-Западного государственного университета (кафедра вычислительной техники), научный руководитель проекта Gerasim@home

Чем занимается проект:

1. Решением задач дискретной оптимизации — поиск наиболее эффективных эвристических методов.

2. Исследованием свойств диагональных латинских квадратов.

Научный руководитель проекта Gerasim@home Эдуард Ватутин, пояснил, что делает проект и к каким результатам пришел за время существования:

«За годы реализации проекта волонтеры «посчитали» более 20 числовых рядов, связанных с ДЛК. Большинство из полученных цифр были до этого неизвестны. Результаты представляют фундаментальный интерес для математики. Также мы составили коллекцию из порядка 10 млн канонических форм ортогональных диагональных латинских квадратов. Тройку в их составе мы не нашли, зато обнаружили и описали множество комбинаторных структур на их базе. Сейчас анализируем свойства этих ДЛК, ищем закономерности. Построение коллекции продолжается.

Обо всех результатах мы пишем на странице проекта в Wikipedia, на форуме. Также я сообщаю о свежих новостях на своей странице во «ВКонтакте», с тегом #OLDS . В целом, данное направление живет и развивается. Нам проект на BOINC дает неплохие вычислительные мощности для решения имеющихся задач».

Одна из целей проекта — заинтересовать людей математикой, рассказывая в научно-популярной форме о сути проводимых вычислений.

Наталия Никитина,

Научный сотрудник лаборатории телекоммуникационных систем Института прикладных математических исследований КарНЦ РАН, руководитель проекта RakeSearch

Чем занимается проект: исследованием свойств диагональных латинских квадратов.

Руководитель проекта RakeSearch Наталия Никитина рассказала, в чем суть инициативы:

«Одна из целей проекта — заинтересовать людейматематикой, рассказывая в научно-популярной форме о сути проводимых вычислений. Я не раз становилась свидетелем, как из простого любопытства вырастает глубокое увлечение наукой. Люди начинают проявлять больше интереса к проектам, высказывают свои идеи по оптимизации процесса вычислений.

Так, на форуме RakeSearch активно обсуждают программный код проекта — он открыт для всех участников. Один из волонтеров, знакомый со специфическими особенностями языка программирования, предложил вариант существенного ускорения вычислений. И мы его успешно внедрили. Буквально на днях мы завершили исследовать свойства пространства ДЛК 10 ранга. Сейчас взяли паузу на обработку полученных результатов и временно не раздаем задачи волонтерам. Но закрывать проект пока не планируем».

Проекты-агрегаторы

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

Сайт-агрегатор с приятным интерфейсом сразу предлагает ознакомиться с актуальными проектами. Сейчас их семь, на любой вкус. Присоединившись к WCG, вы поможете исследованиям, посвященным микробиому, детскому раку, СПИД, туберкулезу и даже прогнозированию дождей в Африке. Без исследования COVID-19 тоже не обошлось.

Этот сайт делает жизнь кранчера, который не хочет тратить время на выбор проектов, проще. Через него есть возможность жертвовать ресурсы компьютера в разные проекты BOINC. Не нужно устанавливать клиенты каждого отдельного проекта — достаточно зарегистрироваться на Science United и выбрать научную область, которой вы сочувствуете больше всего. Это могут быть наука о земле, физика, биология и медицина, математика и другие.

Еще несколько интересных проектов

Этот проект собирает мощности для сообщества nanoHub, в которое входят ученые и студенты со всего мира. Научная область — нанотехнологии. У сообщества есть сайт, где в открытом доступе лежат материалы и инструменты для исследований и обучения в области нанотехнологий. Мощности добровольцев идут в основном на построение различных симуляций.

Из названия можно понять, что в рамках данной инициативы котируются только мощности графических процессоров. Они идут на создание биомолекулярных симуляций высокого качества. Пользуются пожертвованиями волонтеров испанские ученые из Университета Помпеу Фабра в Барселоне. Из плюсов: у сообщества есть живой Twitter, в котором публикуются все важные новости и обновления проекта.

Вариант для тех, кто не хочет присоединяться к BOINC или задействовать свой компьютер. Сотовый оператор Vodafone совместно с Имперским колледжем Лондона создали мобильное приложение DreamLab, которое позволит вам присоединиться к борьбе с коронавирусом. Особенность проекта в том, что он задействует мобильные процессоры для создания виртуального «суперкомпьютера». Вы можете просто запускать приложение на вашем смартфоне, пока он стоит на подзарядке, а вы — спите.

Надеемся, этот текст вдохновил кого-нибудь на вступление в ряды волонтеров проектов добровольных вычислений. Пандемия коронавируса заставила переосмыслить многие вещи, и переосмысление отношения к volunteer computing — лишь одно из них.

Пока мы исследуем новые темы для блога Selectel, приходите делиться мыслями в комментарии. Как относитесь к распределенным вычислениям? Готовы/пробовали себя в IT-благотворительности?

𝕀𝕋 𝕍𝕊 ℂ𝕆𝕍𝕀𝔻-𝟙𝟡

Selectel совместно с VMware хочет узнать, к каким изменениям привел вашу IT-команду карантин, и запускает конкурс.

Расскажите, как режим самоизоляции вывел вас на новый уровень развития, и получайте призы.

Две команды-победителя в каждой из трех номинаций получат наборы в классной спортивной сумке с фирменной символикой Selectel и VMware:

⑤ мультитулов,

⑤ термосов,

⑤ плюшевых Тирексов.

1616
17 комментариев

А есть что-нибудь на iOS?

Ответить

Вот как раз последний проект, о котором мы пишем, — DreamLab. Он доступен для скачивания на «яблоко»: https://apps.apple.com/ru/app/dreamlab/id1273619275?l=en

1
Ответить

Ещё бы все майнеры биткоинов направили свои мощности на что-то полезное... 

Ответить

Ради справедливости отметим, что крупнейший американский майнер CoreWeave перенаправил вычислительную мощность 6 000 видеокарт на исследования Folding@home в марте. И у майнеров есть душа))

1
Ответить

А они уже заняты полезным

Ответить

Майнеры изначально покупали всё для своей пользы. Зачем им заморачиваться.

Ответить

Для тех, кому интереснее считать на смартфонах с ОС Android, есть пошаговая инструкция – “BOINC для Android. Инструкция для начинающих” - https://boinc.ru/forum/topic/boinc-dlya-android/?part=3#postid-3861

Ответить