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

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

В ходе миссии «Аполон-11» программное обеспечение впервые работало на Луне, поэтому можно сказать, что НАСА и Массачусетский технологический институт напрямую способствовали пришествию цифрового века.

Подготовка к следующему этапу освоения космоса

В 2017 году стартовал эксперимент Spaceborne Computer, в ходе которого на Международную космическую станцию (МКС) доставили и запустили терафлопный суперкомпьютер из двух обычных серверов Hewlett Packard Enterprise (HPE) в специальной обвязке. (Совпадение или нет, но это были серверы из линейки Apollo.) Помимо абсолютно стандартного оборудования и самых обычных приложений на этих серверах установлена и типовая ОС с открытым кодом — Red Hat Enterprise Linux.

Обычно компьютеры для космоса создаются с нуля и представляют собой узкоспециализированные системы в высокозащищенном исполнении для работы в условиях рентгеновского и гамма-облучения, а также других неблагоприятных факторов окружающей среды. Однако со времен полета Гагарина взгляды на защиту компьютеров стали смягчаться в том смысле, что если люди могут долго работать на орбите, то и обычному компьютерному «железу» это тоже по силам.

Первоначально планировалось, что эксперимент Spaceborne Computer продлится год (примерно столько займет полет на Марс), в ходе которого HPE и НАСА будут гонять на этих машинах тяжелые вычислительные нагрузки и задачи по интенсивной обработке данных, проверяя серверы в условиях резкой смены радиационного климата на борту МКС и оценивая воздействие солнечного излучения на их надежность. Однако эксперимент затянулся, и в итоге эти компьютеры провели на борту МКС целых 615 дней, пролетев более 350 тыс. км и вернувшись на Землю лишь 4 июня 2019 года на борту космического корабля SpaceX Dragon 9.

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

Больше открытости и сотрудничества

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

Более того, текущий мировой рейтинг суперкомпьютеров TOP-500 на 100% состоит из систем, работающих на той или иной разновидности Linux, а две верхние строчки в нем занимают системы Summit и Sierra, работающие под управлением Red Hat Enterprise Linux. Поэтому вполне реально построить экосистему космических исследований на принципах совместного использования информации и свободного пополнения общего источника знаний, то есть, по аналогии с экосистемой программного обеспечения с открытым исходным кодом.

Залог успеха такой экосистемы заключается в следующем:

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

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

Можно предположить, что в своем развитии «железо» пойдет по тому же пути, что и софт, в результате чего процессорные мозги для космических аппаратов и посадочных модулей будут создаваться коллективными усилиями на принципах открытого исходного кода, как, например, в проекте RISC-V.

Снижение входного барьера при проектировании электронных компонентов является одной из главных целей инициативы DARPA, в рамках которой агентство предложило производителями микроэлектроники совместно, в том числе и финансово, сформулировать исследовательскую повестку в области разработки микросистем для новой эры инноваций. Так что в определенной степени DARPA тоже идет к аппаратному обеспечению категории Open Source.

Инициатива DARPA может привести к тому, что стоимость НИОКР при разработке процессоров и ASIC-микросхем снизится с миллиардов долларов до десятков тысяч, а сроки проектирования и отладки при замене одной кремниевой штуки на другую — от 2-3 лет до считанных недель.

Адаптация к новым вычислительным потребностям

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

Возраст компьютерных систем на борту МКС насчитывает 25-30 лет. Они не менялись с момента вывода станции на орбиту и слабее современных компьютеров в сотни, если не в тысячи раз.

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

Это как публичное облако, где ресурсы запрашиваются и предоставляются из общего резерва мощностей, но только составная инфраструктура реализуется не силами внешнего провайдера, а на базе корпоративного дата-центра, или в нашем случае на борту космического корабля. И по мере того, как корабль стартует с Земли на орбиту, а затем отправляется к другой планете, вычислительные задачи и требования к компьютерной системе постепенно меняются.

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

Человеческий капитал

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

Но настоящий простор для преобразований эти технологии открывают в космосе, где они могут взять на себя сбор и анализ данных в ходе полета с последующим реагированием без привлечения человека. Отправить человека в космос очень дорого: в июне 2019 года НАСА пообещало открыть МКС для частных лиц и коммерческих компаний по цене 35 тыс. долл. с человека в сутки.

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

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

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

Автор статьи — cпециалист по новым технологиям Red Hat.