Апокалипсис - тема благодатная для человеческого ума. Но когда-то человеку пришлось на собственной шкуре испытать все прелести конца света. Тут вам и ледниковый период из-за взрыва супервулкана Тоба, который пережило так мало людей, что огонек Homo sapiens едва не погас под напором холодных ветров. Было и падение астероида в Северной Америке 13 тысячелетий назад, которое привело к упадку культуру Кловис. Случались и рукотворные концы света - племена наска тому самое яркое доказательство.
Современные научные исследования крайне «прожорливо» относятся к вычислительным ресурсам, вынуждая ученых прибегать к использованию дорогостоящих суперкомпьютеров и кластерных сетей. Однако каждый час работы подобных вычислительных систем расписан на многие месяцы вперед. Поэтому многочисленные исследовательские группы чуть ли не дерутся между собой за доступ к этим высокопроизводительным числодробилкам.
Тем временем в мире простаивают без дела технические средства с совокупной вычислительной мощностью, способной заткнуть за пояс все суперкомпьютеры мира. Этот пока малоосвоенный резерв – процессоры и видеокарты наших персональных компьютеров, а также игровые приставки. Владельцу ПК совсем не сложно подключить его к глобальной сети распределенных вычислений (distributed computing), которая уже обеспечила десятки научных проектов недостающими вычислительными ресурсами.
Персональные компьютеры – волонтеры на службе Её Величества Науки
На домашних и офисных ПК центральные процессоры и видеокарты большую часть времени работают на «холостом» ходу – их загрузка не превышает десятой части их вычислительных способностей. Предоставив пропадающее даром процессорное время на нужды науки, владелец компьютера не чувствует неудобств (кроме разве что шума от вентиляторов из-за повышенного тепловыделения) – вычисления выполняются с минимальным приоритетом, не сказываясь на работе других программ, играх, просмотре фильмов или других развлечениях. Соединение с Интернет необходимо лишь для отправки результатов на сервер и получения новых заданий – расходы на трафик вырастут незначительно на фоне обычных прогулок в сети.
Распределенные вычисления прекрасно справляются с задачами перебора – например, при поиске простых чисел, молекул потенциальных лекарственных веществ, с обработкой данных прямых наблюдений в радиоастрономии и астрофизике, с моделированием природных процессов и во многих других областях научных исследований. Особенностью распределенной платформы вычислений является необходимость налаживания эффективного взаимодействия между разбросанными по всему миру персоналками. Поэтому общая вычислительная задача не «заглатывается» целиком, как происходит в суперкомпьютерах, а разбивается на отдельные блоки, обсчитываемые на разных компьютерах в произвольном порядке и независимо друг от друга.
Распределенные вычисления - это возможность любому пользователю компьютера помочь делу научного прогресса
Нередко уступая профессиональным кластерным системам в удельной производительности на единичный процессор, персональные компьютеры, особенно с установленными мощными видеокартами, а также ноутбуки и сервера участников распределенных вычислений берут числом: их армия растет стремительными темпами, тогда как запуск новых суперкомпьютеров – событие редкое, попадающее в выпуски новостей.
Большинство проектов распределенных вычислений носят некоммерческий характер, хотя некоторые предлагают своим участникам денежное вознаграждение за искомое событие. Например, организаторы GIMPS (Great Internet Mersenne Prime Search) – проекта поиска простых чисел Мерсенна – обещают поделиться наградой в TeX Embedding failed!100,000 за нахождение простого числа, содержащего более 10 млн. цифр.
Ярким примером того, насколько эффективным может стать вовлечение пользователей персоналок в науку, является организованный в стенах Стенфордского университета проект по исследованию фолдинга (сворачивания) белков человеческого организма - Folding@home. Единовременно на решение задач в этом проекте трудится более 365 тысяч процессоров, разгоняя Folding@home до невероятной вычислительной мощности в 4,7 петафлоп. Никакой суперкомпьютер не выдержит конкуренции с распределенной сетью такой производительности, да еще ежедневно увеличивающей вычислительный потенциал за счет новых участников. Даже мировой рекордсмен – американский суперкомпьютер Cray XT5 Jaguar из Национального центра вычислительных наук уступает по производительности проекту Folding@home почти в три раза.
Проект Folding@home - самая высокопроизводительная вычислительная система в мире
За девятилетнюю историю развития проекту Folding@home удалось пролить свет на многие проблемы молекулярной биологии и вплотную приблизиться к давней мечте биофизиков – разгадке тайны фолдинга. Эта система помогла смоделировать структуру первого в истории искусственного белка, исследовать мутации генов, вызывающих генетические заболевания, а также изучать влияние множества внешних и внутренних факторов на сворачивание малых и больших белков человеческого организма.
Важность подобного проекта трудно переоценить в свете значения белков для организма человека: ферменты участвуют в обмене веществ, тромбины помогают сворачивать кровь, иммуноглобулин защищает от болезнетворных бактерий и вирусов, гемоглобин транспортирует кислород к тканям и т.д. Эти функции белки начинают выполнять после сворачивания (фолдинга) из первоначальной линейной цепочки аминокислот в строго определенную трехмерную молекулярную структуру. Отклонения от заданной формы ведут к нарушениям свойств белка или полной его неработоспособности, а накопление неправильно свернувшихся белков в человеческом организме вызывает ряд тяжелых заболеваний: многие формы рака, болезни Альцгеймера, Паркинсона и Хантингтона, склероз, коровье бешенство, диабет и многие другие.
SETI@home: в поисках радиосигналов от братьев по разуму
В другом знаменитом проекте распределенных вычислений SETI@home (SETI - Search for Extraterrestrial Intelligence at Home), в котором анализируется на наличие сигналов искусственного происхождения записанный с помощью радиотелескопа в Аресибо космический «радиоэфир», количество подключенных компьютеров составляет около 300 тысяч с общей скоростью выполнения операций более 700 терафлоп. Хотя это и не самый высокий показатель в мире распределенных вычислений, но даже его хватает, чтобы занять почетное пятое место в TOP500 самых производительных суперкомпьютеров мира, потеснив оттуда китайский суперкомпьютер Tianhe-1 (563 терафлоп).
Между прочим, с поиском радиосигналов от далеких цивилизаций не так все безнадежно, как думают некоторые скептики проекта SETI@home. Чтобы убедиться в этом, достаточно бегло пробежаться по истории открытий в этом секторе радиоастрономии. Так, в ночь на 15 августа 1977 года радиотелескоп «Большое ухо» (Big Ear Radio Obsevatory) университета Огайо зафиксировал на длине волны 21 см, шедший из созвездия Стрельца, радиовсплеск необычной природы. Сигнал значительно выделялся на фоне космического шума, а его мощность нарастала и ниспадала по кривой Гаусса, то есть соответствовала ожидаемым характеристикам искусственного сигнала внеземного происхождения. В ту ночь за оборудованием следил Джерри Эман, который на распечатке пометил полученный сигнал восторженным «wow!» («вау!»), под таким названием и вошедшего в историю проекта SETI. Сигнал был пойман лишь один раз – сколько «Большое ухо» ни сканировал после этот участок неба, но ничего, кроме обычного шума, больше поймать не удалось.
Другой известный случай обнаружения аномального сигнала произошел уже с помощью проекта SETI@home. На компьютеры его участников отправляются блоки заданий, «нарезанные» из записей космического шума радиотелескопа обсерватории Аресибо в Пуэрто-Рико. Анализируются узкий диапазон вокруг 1420 МГц, как теоретически наиболее перспективной радиочастоты для обнаружения сигналов от источников, расположенных в радиусе одной тысячи световых лет. В марте 2003 года на этой частоте был пойман таинственный сигнал, маркированный как SHGb02+14a, который шел из области космоса между созвездиями Овна и Рыб. Мощность радиосигнала существенно превосходила обычный уровень фонового шума, однако его амплитуда «дрейфовала» со скоростью до 37 Гц в секунду. Искусственная природа сигнала была поставлена под большое сомнение, хотя сам факт события весьма взбудоражил сообщество SETI и укрепил в решимости продолжать поиски внеземного разума.
Последний по времени загадочный всплеск радиоволн был зафиксирован в конце 2006 года сотрудниками Университета Западной Виржинии. Пиковая мощность миллисекундного затухающего сигнала была настолько большой по меркам радиоастрономии, что не позволила идентифицировать ни с одним известным космическим телом. Расстояние до источника всплеска оценивается в 1 миллиард световых лет в направлении галактики Малое Магелланово облако. Сигнал поймали на частоте около 1,5 ГГц, которая не охвачена проектом SETI@home. Вернее, была не охвачена до лета 2008 года, когда в SETI@home стартовал подпроект Astropulse для анализа широкого диапазона длин волн. Теперь у нас больше шансов не пропустить «весточку» от братьев по разуму, а также стать первооткрывателями космических объектов неизвестной науке природы.
Когда компьютеров еще не было
Распределенные вычисления имеют историю, которая началась еще во времена безраздельного господства счётов, как главного вычислительного инструмента.
В конце 18-го века правительство Франции решило существенно улучшить логарифмические и тригонометрические таблицы в преддверии введения метрической системы. Работа была связана с огромным по тем временам количеством расчетов, а потому ее поручили руководителю бюро переписи населения – барону Гаспару де Прони. В результате появилась его знаменитая «вычислительная мануфактура».
Барон смело взял на вооружение идею о разделении труда и перенес ее принципы на вычислительный процесс. Исполнители проекта были распределены на три уровня. Низший уровень в системе занимали обыкновенные люди-вычислители, от которых требовалось производить аккуратные арифметические действия. На втором уровне стояли образованные счетоводы, которые организовывали рутинный процесс, распределяя задания и обрабатывая полученные вычислителями данные. Высшую ступень занимали выдающиеся французские математики, среди которых были Адриен Лежандр и Лазар Карно, они готовили математическое обеспечение для вычислительной мануфактуры и обобщали полученные результаты. В итоге барону де Прони удалось организовать процесс таким образом, чтобы свести очень сложные задачи к набору рутинных операций, благодаря четкой системе контроля и хорошо отлаженной системе распределения работы между вычислителями. К сожалению, работа не была закончена из-за революционных событий 1799 года во Франции.
Идеи де Прони подтолкнули Чарльза Бэббиджа к созданию его «аналитической машины» – первого в истории прототипа ЭВМ. Компьютер на паровой тяге так и не заработал, а «вычислительные мануфактуры» применялись в исследовательских проектах вплоть до середины 20 века. В частности, их использовали при разработке первых ядерных бомб в США и Советском Союзе.
Когда компьютеры были большими
Идея совместного использования вычислительных ресурсов нескольких машин возникла еще на заре компьютерной эпохи. В 1973 г. Джон Шох и Жон Хапп из знаменитого калифорнийского научно-исследовательского центра Xerox PARC (Palo Alto Research Center), написали программу, которая по ночам запускалась в локальную сеть PARC, расползалась по работающим компьютерам и заставляла их выполнять вычисления.
Качественный скачок в обеспечении совместной работы многих компьютеров над единой задачей произошел с появлением первых персональных компьютеров и электронной почты. В 1988 г. Арьен Ленстра и Марк Менес написали программу для факторизации (разбиения на множители) длинных чисел. Для ускорения процесса программа могла запускаться на нескольких не связанных друг с другом машинах, каждая из которых обрабатывала свой небольшой фрагмент числа. Новые блоки заданий рассылались на компьютеры участников с центрального сервера проекта по обычной электронной почте. Для успешного разложения на множители числа длиной в сто знаков этому сообществу потребовалось два года и несколько сотен персональных компьютеров. С успешным завершением проекта Ленстра-Менеса на древе эволюции вычислительных систем выросла новая жизнеспособная ветвь – распределенные вычисления.
После успешного окончания проекта Ленстра-Менеса в ходу были проекты различных математических исследований. В 1993 г. участники одного из таких проектов факторизовали число длиной 129, потом – 130 знаков. Затем пошла мода на поиск простых чисел. Эти проекты не отличались ни технической проработанностью, ни большим количеством участников. Но так продолжалось недолго.
Когда компьютеров стало много
28 января 1997 г. стартовал конкурс RSA Data Security на решение задачи взлома методом простого перебора 56-битного ключа шифрования информации RC5-32/12/7. Благодаря хорошей технической и организационной подготовке проект, организованный некоммерческим объединением distributed.net, быстро получил широкую известность и привлек внимание мировой общественности к распределенным вычислениям.
17 мая 1999 г. Дэвид Геди и Крэйг Кэснов из Лаборатории космических исследований Калифорнийского университета в Беркли запустили распределенный проект поиска сигналов внеземных цивилизаций SETI@home, который до сих пор остается одним из наиболее массовых проектов. Огромной популярности способствовало то, что впервые была переведена на рельсы распределенных вычислений интригующая научная задача, далекая от скучной факторизации или взлома очередного ключа.
Распределенные вычисления многим обязаны организаторам SETI@home из Беркли, в особенности – появлением универсальной платформы BOINC (Berkeley Open Infrastructure for Network Computing) для запуска новых проектов. Первоначально BOINC разрабатывался исключительно для SETI@home, но вскоре достоинства программного комплекса смогли оценить и другие научные коллективы. Сегодня количество проектов на этой платформе уже перевалило за сотню. За такой вклад в развитие науки разработчики BOINC неоднократно награждались американским Национальным научным фондом.
На компьютеры пользователей устанавливается клиентская часть платформы, так называемый BOINC-клиент. Эта удобная программа позволяет подключаться сразу к нескольким проектам, вести статистику своего участия в них и наблюдать за протеканием вычислений. Практически каждый, кто обладает базовыми навыками программирования и у кого найдется достойная поддержки научная идея, может организовать собственный проект распределенных вычислений на основе BOINC. Так сделал, например, физик Константин Метлов из Донецкого физико-технического института (ДонФТИ). Практически в одиночку ученый смог запустить проект Magnetism@home по расчету магнитных конфигураций цилиндрических наноэлементов. Несмотря на сложную для понимания научную тему, проект быстро набрал нужные вычислительные ресурсы.
Развитие распределенных вычислений продолжается семимильными шагами. Под ружье научного прогресса поставлены даже видеокарты и игровые приставки. Видеть в качестве вычислительного ресурса такие устройства непривычно, но на практике они могут дать фору самому мощному компьютеру. К примеру, в проекте Folding@home уже с лета 2006 года используют потенциал 8-ядерных процессоров Cell игровых приставок Play Station 3, способных выдать порядка 20 гигафлоп, что на порядок больше, чем у обычного офисного компьютера. Благодаря соглашению с компанией Sony программа для моделирования динамики фолдинга белков встроена в приставки изначально, но владелец устройства сам вправе решать – подключаться ему или нет к проекту. Осенью того же года в Folding@home смогли освоить вычислительные возможности графических процессоров видеокарт компании ATI, а в 2008 году очередь дошла и до видеокарт NVIDIA.
Многоядерные графические процессоры оправдали все надежды, показывая феноменальную производительность в 100 гигафлоп и более. Этот технологический прорыв сделал Folding@home наиболее мощной вычислительной системой на планете. Другие проекты также не заставили себя долго ждать и рьяно взялись использовать потенциал графических процессоров видеокарт для ускорения вычислений, причем не только в биологии, но и в астрофизике, радиоастрономии, математике.
На любой вкус и цвет
Передний край науки в физике, астрономии, биологии, математике и криптографии, химии, информационных технологиях, экологии – эти направления широко представлены в мире распределенных вычислений и имеют многочисленных сторонников.
Очень популярен в свое время был проект LHC@home, участники которого сначала помогали Европейской организации по ядерным исследованиям (ЦЕРН) проектировать знаменитый Большой адронный коллайдер, а затем просчитывали орбиты протонов и тяжелых ионов уже для подготовки непосредственных экспериментов на этом крупнейшем ускорителе заряженных частиц. Похожая история повторяется в проекте Muon1: компьютеры добровольцев рассчитывают параметры базовой конструкции «Фабрики нейтрино» (Neutrino Factory) – будущего ускорителя, способного порождать потоки легких нейтральных частиц – нейтрино.
Большое поле приложения вычислительных мощностей наших компьютеров предлагает астрономия. После SETI@home в исследовании загадок Вселенной нет равных проекту Einstein@home – совместному детищу ученых из Института Альберта Эйнштейна в Берлине, Массачусетского технологического института и др. научных организаций. Проект занят наблюдением вращающихся нейтронных звезд (пульсаров) с целью обнаружения гравитационных волн, предсказанных Эйнштейном в рамках Общей теории относительности. Для этого более 100 тысяч компьютеров активных участников проекта круглосуточно анализируют данные с двух интерферометров гравитационно-волновых обсерваторий LIGO (Laser Interferometer Gravitational-Wave Observatory) и германского интерферометра GEO 600.
Галактика Млечный Путь, в которой сияет наше светило, уже продолжительное время «поглощает» одно из карликовых звездных скоплений из созвездия Стрельца. Проект Milkyway@home, поддерживаемый Ренселлеровским политехническим институтом, должен ответить на вопрос: насколько в будущем окажется перекроенной карта нашей галактики в результате действия порожденных слиянием мощных приливных звездных потоков. Более масштабную задачу поставили перед собой организаторы проекта Cosmology@home из Иллинойского университета – найти такую космологическую модель Вселенной, которая наилучшим образом согласовывалась бы с данными астрономических наблюдений и значениями физических постоянных. На этом фоне таким приземленным кажется Orbit@home – проект наблюдения за астероидами, которые могут представлять угрозу столкновения с Землей. Проект использует данные наземной сети телескопов и взят на финансирование NASA.
В изучении белков помимо Folding@home участвуют другие проекты: Rosetta@home, Predictor@home, SIMAP, Human Proteome Folding (WCG) и другие. На этом перечень биоинформационных исследований с помощью распределенных вычислений далеко не исчерпывается. Многое в этой области сделано объединением World Community Grid (WCG) и его главным спонсором – компанией IBM.
Задачей WCG является организационно-техническая поддержка целой группы проектов, большинство которых относятся к области медицины человека. Например, разработкой новых средств профилактики синдрома приобретенного иммунодефицита (СПИД) занимается проект FightAIDS@home, организованный учеными из Исследовательского института Скриппса в Ла-Джолле (Калифорния). Проект Help Conquer Cancer Института рака в Онтарио анализирует данные рентгеновской кристаллографии белков, участвующих в развитии раковых заболеваний. Результаты этих исследований помогут лучше понять природу рака, разработать новые способы его диагностики и лечения. А в проекте Help Fight Childhood Cancer, который поддерживают ученые из Института по исследованию Рака в префектуре Чиба (Япония), ищут лекарства от нейробластомы – особого вида раковых опухолей, поражающих преимущественно детей.
В рамках других проектов WCG исследуются новые материалы для солнечных батарей, ищутся перспективные лекарственные вещества от вирусов гриппа и лихорадки, анализируются белковые последовательности риса и многое другое.
Подключиться к World Community Grid очень просто:
Зарегистрируйтесь на сайте World Community Grid, запомните свой логин и пароль.
Не выходя из своей учетной записи выберите заинтересовавшие вас научно-исследовательские проекты, в которых вы хотите участвовать (желательно поставить флажок возле надписи “If there is no work available for my computer for the projects I have selected above, please send me work from another project.”)
Войдите в BOINC-менеджере в режим Advanced View, найдите в меню «Сервис» пункт «Добавить проект». В перечне проектов выберите World Community Grid.
После этого BOINC предложит вам ввести ваши логин и пароль и начнёт загрузку файлов проекта. Поздравляем, вы теперь участник распределенных вычислений!
Математические проекты первыми освоили возможности распределенных вычислений и с тех пор нисколько не сбавили обороты. В проекте Seventeen or Bust продолжаются поиски наименьшего числа Серпинского. Простые числа сразу нескольких видов определяют в PrimeGrid, а вот простые числа Вифериха ищут в одноименном чешском проекте Wieferich@home. Гипотезу Гольдбаха доказывают участники GoldbachConjectureVerification. Новые делители чисел Ферма вычисляют на компьютерах, подключенных к проекту Fermat Search. Это только малая часть математических проектов. В области криптографии, тесно связанной с математикой, многое сделано сообществом distributed.net, которое запустило серию проектов проверки алгоритма шифрования RC5 и поиск оптимальных линеек Голомба – OGR. Для разнообразия также можно поучаствовать в проекте Enigma@home по дешифровке последней из нерасшифрованных немецких радиограмм, датируемой 1942 годом.
Теоретическая химия тоже завоевала место под солнцем распределенных вычислений. Например, ученые из Мюнстерского университета в рамках проекта QMC@home (Quantum Monte Carlo At Home) отрабатывают применимость алгоритмов статистических методов Монте-Карло в решении задач квантовой химии. С помощью того же Монте-Карло совершенствуют методологию моделирования межатомного взаимодействия в твердых телах в Техасском университете в городе Остин. Для вычислительной поддержки этих исследований создан проект eOn, где уже достигнуты успехи в исследовании каталитических реакций в присутствии наночастиц.
Климатологи относятся к группе ученых, которым нужно особенно много вычислительных ресурсов для совершенствования методов моделирования. Одним из инструментов такого рода является ClimatePrediction – проект Оксфордского университета по изучению изменений климата. С 2002 года участники проекта успели проверить более 400 тысяч вариантов климатических моделей с общим модельным временем 40 миллионов лет. Это позволило значительно повысить точность прогнозирования параметров нашего климатического будущего.
Как видим, распределенные вычисления проникли во многие отрасли науки, превратившись в надежного партнера ученых. Миллионы людей из статистов научного прогресса превратились в его непосредственных участников. Международная аудитория распределенных вычислений растет, объединяя людей из разных стран в едином стремлении к раскрытию тайн мироздания.
Light-вариант статьи опубликован в «Популярной механике» №6-2009
Индустрия частных космических полетов стремительно набирает обороты. К 2010 году должен совершить первый полет суборбитальный космический корабль "Lynx" ("Рысь"), металлическую модель которого на днях протестировали в аэродинамической трубе на базе ВВС США.