Вид с «Эльбруса» (Михаил Шигорин, OSSDEVCONF-2023)

Материал из 0x1.tv

Докладчик
Михаил Шигорин.jpg
Михаил Шигорин

Обзор состояния аппаратной и программной части платформы «Эльбрус», – включая пять лет повседневного применения по работе и год – дома.

Достигнутое в настоящем, виды и планы на будущее, виртуальные и реальные проблемы и возможности.

Видео

Презентация

Вид с «Эльбруса» (Михаил Шигорин, OSSDEVCONF-2023).pdf Вид с «Эльбруса» (Михаил Шигорин, OSSDEVCONF-2023).pdf Вид с «Эльбруса» (Михаил Шигорин, OSSDEVCONF-2023).pdf Вид с «Эльбруса» (Михаил Шигорин, OSSDEVCONF-2023).pdf Вид с «Эльбруса» (Михаил Шигорин, OSSDEVCONF-2023).pdf Вид с «Эльбруса» (Михаил Шигорин, OSSDEVCONF-2023).pdf Вид с «Эльбруса» (Михаил Шигорин, OSSDEVCONF-2023).pdf Вид с «Эльбруса» (Михаил Шигорин, OSSDEVCONF-2023).pdf Вид с «Эльбруса» (Михаил Шигорин, OSSDEVCONF-2023).pdf Вид с «Эльбруса» (Михаил Шигорин, OSSDEVCONF-2023).pdf Вид с «Эльбруса» (Михаил Шигорин, OSSDEVCONF-2023).pdf Вид с «Эльбруса» (Михаил Шигорин, OSSDEVCONF-2023).pdf Вид с «Эльбруса» (Михаил Шигорин, OSSDEVCONF-2023).pdf Вид с «Эльбруса» (Михаил Шигорин, OSSDEVCONF-2023).pdf Вид с «Эльбруса» (Михаил Шигорин, OSSDEVCONF-2023).pdf Вид с «Эльбруса» (Михаил Шигорин, OSSDEVCONF-2023).pdf Вид с «Эльбруса» (Михаил Шигорин, OSSDEVCONF-2023).pdf Вид с «Эльбруса» (Михаил Шигорин, OSSDEVCONF-2023).pdf

Thesis

Железо

Как известно, МЦСТ начинали со взаимодействия с Sun Microsystems и соучастия в разработке SPARC; эта линейка микропроцессоров продолжается и по сей день в виде R2000.

Основное же внимание уделим именно отечественной архитектуре «Эльбрус» — именно поддержкой её в ОС Альт и занимаюсь с 2015 года.

Софт

В девяностых годах на SPARC-процессорах естественным образом стали применять ОС Solaris (2.5.1 на e90), но уже в ранних нулевых начали работы по переносу ядра Linux 2.4, что в итоге вылилось в наработанный к «Эльбрус-2С+» технологический задел на Linux 2.6 [1] и создание либо перенос ряда линуксовых дистрибутивов.

Опять же, по своей деятельности говорить буду про «Альт».

Люди

Создатели микропроцессора «Эльбрус» — МЦСТ; в работах по вычислительным комплексам принимает участие ИНЭУМ; в переносе критического системного ПО, затрагивающего кодогенерацию — Унипро; во внедрениях — Эльбрус-2000. Впоследствии приняли участие и многие другие компании, но эти — изначальные.

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

Сообщество же пошло формироваться, пожалуй, «от новостей». Сперва люди заинтересовывались публикациями о разработке отечественного процессора и первых практических результатах (пусть и недоступных на предмет «пощупать руками»). Затем начали появляться профильные вопросы на форумах по программированию. И с 2014—2015 года, когда организациям стало возможно приобрести рабочую станцию «Эльбрус 401-РС», не будучи в контуре ОПК — пошли первые результаты тестов, обсуждения применимости, патчи в апстримы и т.\,д.

Сообщество

В первую очередь, при таких вводных, естественно, стало формироваться русскоязычное сообщество: поскольку и новости выходили в оригинале по-русски, и гражданские организации, где начали появляться машины -- тоже российские. При этом первой известной мне публичной «точкой кристаллизации» оказался Яндекс-музей, где усилиями одного из энтузиастов началось освоение 801-РС с целью переноса и запуска игрушек.

Наблюдается интерес и из-за рубежа — с вопросами от возможности приобретения (пока увы) до соучастия в переносе программ (а вот с этим уже получше).

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

Песочница

Пожалуй, наиболее удачным экспериментом в области собирания сообщества пользователей и разработчиков ПО на архитектуре «Эльбрус» стоит признать доступный желающим стенд ИНЭУМ, созданный усилиями Игоря Молчанова и на сентябрь 2023 года насчитывающий около полутысячи аккаунтов; для обсуждения (желательно технического) и анонсов работ по инфраструктуре (включая и важные обновления системного ПО, например, новые версии компилятора) применяется чат в telegram.

Альтовое

Попытки формирования сообщества пользователей e2k-alt-linux успехом скорее не увенчались в силу специфики организаций и недостаточности уделяемого вопросу внимания: как правило, сообщения в непубличную рассылку принимаются к сведению без обсуждения там же; основным полезным направлением оказался тематический раздел в рамках Альт-вики.

OpenE2K

Потихоньку собираются люди около проекта переноса эмулятора qemu на платформу e2k, который не стал ограничиваться наработанным qemu-user-e2k, но пошёл «вширь».

Домашнее

Также интересны случаи применения систем «Эльбрус» в качестве домашнего компьютера, каковых известно уже больше десятка. Мой начался в 2020 году («одомашнивание» стенда), [http://sdelanounas.ru/blogs/149691/ а в штатный режим перешёл в 2022].

На данный момент можно обобщить так: владельцы домашних «Эльбрусов» — достаточно опытные администраторы/ разработчики, основной же проблемой является браузер (обычно это стареющий firefox).

Виды

Железо

Судя по публикуемым госзакупкам, на «Эльбрус-2С3» надеяться вполне можно. Это достаточно мощный процессор текущей версии микроархитектуры для ознакомления и нетяжёлых задач (два ядра по два гигагерца), поддерживающий виртуализацию и PCIe gen3. Более мощные многопроцессорные e2k-системы сейчас простому человеку доступны скорее через стенд ИНЭУМ.

Софт

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

При возможности перевода проекта в открытый режим взаимодействия хотелось бы избежать типичных проблем:


  1. «выкидывание через забор»;
  2. архивы вместо гитов;
  3. отсутствие обратной связи;
  4. форки вместо соучастия.


И, соответственно, прийти к известной обкатанной технической инфраструктуре:


  1. репозитории разработки кода (git);
  2. чат для быстрых обсуждений (telegram);
  3. почтовые рассылки для обсуждения по существу (mailman);
  4. отслеживание конкретных ошибок (bugzilla);
  5. накопление и систематизация опыта (wiki).


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

Люди

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

Но мы точно можем лучше сообща [2], [3], [4].

2023-mike-img001.png


Вид с «Эльбруса» (Михаил Шигорин, OSSDEVCONF-2023)!.jpg

Примечания и ссылки