Сегодняшнее положение процессоров «Эльбрус»: взгляд практика
Следи за успехами России в Телеграм @sdelanounas_ruНаткнулся в комментариях под видеозаписью выступления своего коллеги Андрея Савченко у Максима Горшенина на ссылку как бы на аналитику с причитаниями выводами «всё плохо на этом вашем эльбрусе».
Почитал, вздохнул, решил написать с точки зрения практика не комментарий, но ответ, в некоторой мере стилизовав его под пародию и тем не менее всерьёз. В конце концов, к фронтовому сетевому новостному агентству ANNA-News тоже имею отношение.
С 2015 года работаю с машинами на процессоре «Эльбрус», чиню пакеты, собираю дистрибутивы, отправляю патчи в апстримы, пишу статьи и делаю доклады. За это время заметил множество самых разных моментов, касающихся как самих процессоров и компилятора, так и их создателя -- компанию «МЦСТ».
Опишу ситуацию с «Эльбрусом» со стороны практика, включая как технический анализ, так и немножко тестов.
Первое: имеющаяся публичная информация об «Эльбрусе» довольно сильно разрознена (больше всего сконцентрировано в книжке), хотя в последние два-три года начали появляться статьи не только на сайте МЦСТ, а и силами партнёров -- например, чего стоит одна серия статей SmartEngines. Со своей стороны решил приложить усилия не только к портированию альта (и тем самым расширению ареала прикладных программ => применимости платформы), а и к публикации полученной информации в разумных пределах и с учётом подписанного NDA; получился этот блог на СуН, серия докладов в основном на LVEE и нашей калужской конференции, а с лета этого года -- и небольшая, но растущая группа страниц на альтовой вики (ссылки на это всё уже были парой абзацев выше). Немножко удивлён, что в вызвавшей к жизни эту статью публикации всё это начисто проигнорировано -- с учётом того, что автор вроде как следит за каналом Максима, где соответствующие ссылки есть то в описании, то в комментариях. Что-то здесь не так.
Лекции специалистов МЦСТ и впрямь можно снимать сильно лучше, поработав со звуком и, пожалуй, освещением/монтажом слайдов (если есть желающие -- давайте познакомлю со Стасом Фоминым, его SeminarAssembler может очень даже пригодиться -- и нужными людьми в МЦСТ, моя почта в профиле и вообще широко известна). Мало того, очень нужны на публике слайды Алексея Маркина по оптимизации -- это лучшее по теме, что я пока видел (как минимум в плане доходчивости). Работаем.
Ценовая политика МЦСТ и впрямь вызывает вздохи что у нашего юрлица (и даже у головной конторы), что у моего физлица (которому, впрочем, не продают «Эльбрус» даже за полтораста тысяч, ибо NDA; хотя известен минимум один случай покупки целеустремлённым физлицом через ИП): известные мне цены составляют на «Эльбрус 101-РС» ~160 т.р., 801-РС -- 314 т.р., 804 (четырёхпроцессорный сервер) -- был 1,4 млн руб на первой партии, сейчас не знаю.
Обусловлены эти цены практически штучным объёмом производства: 50--100 машин в партии, несколько тысяч выпущенных процессоров за всё время (см. вопросы-ответы Константина Трушкина на SECR 2018). Да, это в некотором роде замкнутый круг: дорого -> мало где надо -> мало оборудования и программ -> мал оборот -> дорого (при значительной неинвариантной части разработки в этой самой себестоимости).
Китайцы брутфорсили подобную проблему массированными государственными вливаниями сразу в несколько различных проектов, выйдя на очень удачное семейство ARM-овых Allwinner SoC и неплохое, но не поставляющееся на экспорт, семейство MIPS-процессоров Loongson, не считая ещё пары из «взлетающего». Не буду ругаться ещё и здесь на минфин 2014 года (хотя зажатые ими тогда копейки могли уже бурно колоситься и здесь), тем более что наше государство прикладывает свои усилия даже в рамках условно рыночной модели.
В любом случае человек, который не понимает, что разработка и реализация бизнес-плана розничных продаж (с поддержкой притом) высокотехнологичного продукта и собственно этого продукта -- мало-мало разные явления… ну как бы это помягче сказать… ребёнок малый, какого бы биологического возраста ни был.
Да, и на платы процессоры напаиваются по той простой причине, что процессорный сокет, по сути физически и термически нагруженный ВЧ-разъём -- штука тоже технически непростая, решающая маловажные для приоритетных применений задачи и потому отложенная «на потом». Просматриваются такие два довода «за»: ремонт изделий заменой процессора, а не платы с ним (я пока не сталкивался с выходом «Эльбрусов» из строя, а три 801-РС из опытной серии нам перепаяли на серийные 8С весьма оперативно); совершенствование уже развёрнутых систем путём замены процессоров начального класса на более мощные совместимые (смысл появится при более широком производстве и более гибкой отбраковке,
Про закладки было бы смешно, если б хоть какая-то оригинальная искорка была пририсована ко глупой шутке неспециалистов. Скажу так: в отличие от SMM на вообще всех актуальных x86 (не говоря уже про дальнейшие «достижения») -- лично мне в аппаратуре и тулчейне e2k пока не попадалось ничего прямо или косвенно похожего на закладки; обнаруженные и сданные в систему отслеживания ошибок недочёты производитель оперативно принимает в работу.
Защищённый режим (ptr128), про который есть упоминание в том же докладе Трушкина на SECR 2018 -- штука настолько суровая, что к портированию на него не готовы и ядро Linux вместе с системной библиотекой glibc (по крайней мере разумными усилиями). Поэтому сейчас он применяется либо где действительно надо, либо в LXC-контейнерах специального вида с теми программами, которые представляют потенциальную часть уязвимой поверхности системы в целом. «Плюсовые» программы при заданных ограничениях нежизнеспособны.
Ну и мантры про «выбор между ЦРУ и ФСБ» годятся только для тех, не побоюсь этого слова, раскидистых лопухов, которые не понимают свою ничтожно малую, но всё-таки ненулевую ценность на глобальном рынке уличного мяса (с последующим спиливанием остаточных улик).
Дизайн устройств в целом хорош, хотя как «железячник» и пользователь с примерно тридцатилетним стажем, разумеется, на каждой модели находил, что можно было бы сделать ещё лучше (и рассказывал коллегам из МЦСТ). Да, их фирмварь ориентирована сугубо на специалиста -- зато прекрасно работает через COM-шнурок.
Претензии к выбору [графической] оболочки вообще смехотворны на фоне типичных обсуждений графических сред -- Xfce уже много лет является пожалуй что наиболее зрелым и консервативным вариантом для любителей традиционного десктопа на *NIX; при этом в Альт на Эльбрусе штатно входит графическая среда MATE, а стартовые наборы на Девятой платформе включают в себя также и варианты с Cinnamon и LXQt, помимо опять же Xfce и доступных в репозитории LXDE с Enlightenment.
Бинарная трансляция и впрямь выручает для закрытых программ, доступных исключительно под x86 -- но здесь ровно та же ситуация, что и с WINE: есть возможность выкрутиться, пока до поставщика доходит суть изменений в мире. Двухконтурные системы, кстати -- это про физическое разделение обработки иниформации различающегося характера закрытости, а не то, что по своей самоуверенности подумал автор той статьи, с прочтения которой началась эта.
С нарушением GPL тоже не всё так просто -- это мы знаем, как обстоит на самом деле (и какую на самом деле задачу необходимо решить -- и общими усилиями решаем); а теоретики, которые эту самую GPL или хотя бы третий пункт второй версии даже прочесть и осмыслить не удосужились, не понимают того, что кто не получал бинарников -- тому исходников никто давать не обязан. Тем временем подавляющее большинство из более чем 12000 исходных пакетов пакетов Альт для Эльбрус доступны пользователям в архиве на нашем ftp и в git.altlinux.org.
В результате имеем хороший универсальный процессор мирового уровня, прямо сейчас пригодный для десктопов и серверов, обладающий большим потенциалом в многопроцессорных системах обработки данных (4С и 8С -- это вообще-то quad capable, те же Xeon для таких систем стоили совсем неприятных денег задолго до Xeon SP); компанию, которая умудрилась за девяностые сохранить и приумножить потенциал разработок СССР, соединив его с полученными от Sun Microsystems западными технологиями; растущую экосистему сторонних поставщиков системного и прикладного ПО. Вместе с этим наследие АН СССР так просто не отодвинуть и многие реальные издержки, которые стороннему наблюдателю непонятны -- растут именно от изначальной академичности. Это во многом исправимо выносом рутинных или специфических вещей на сторону более приспособленных к ним организаций и уже происходит.
Государство -- точнее, госкорпорации -- закупают «Эльбрусы» по нарастающей, я это тоже отчасти вижу по тому, откуда/какие приходят запросы на нашу операционку и вопросы по ней.
В физическом мире «Эльбрус 801-РС» -- мой выбор с марта 2018 года. А любой желающий может приехать в московский Яндекс.Музей и пощупать такую машину, только с мощной видеокартой, своими руками.
В общем, логично относиться с презрением и недоверием к кучке свидомых громадян, которые неумело пытаются наводить тень на плетень, весьма избирательно и специфически обработав поступающую информацию -- да ещё и пытающихся косить под «массу» и тем более «большинство», а в особенности -- «экспертов». Фу таким быть, позор от слова «полный».
PS: ах да, и тесты -- до систематизации пока руки не особо доходили, но ссылка на циферки по 7za b на страничке уже есть; любой действительно интересующийся темой давно бы их нашёл.
PS: реальные проблемы, разумеется, есть -- и нынешняя недоступность трансляторов некоторых языков программирования (как вот Objective C или Rust), и принципиальное неудобство реализации JIT на VLIW, и пресловутое «мало софта, трудно обмениваться» -- только вот проблемы практики решают применением двуручного рашпиля, а не нытьём.
Михаил Шигорин
20.10.2019
Кстати, а вы знали, что на «Сделано у нас» статьи публикуют посетители, такие же как и вы? И никакой премодерации, согласований и разрешений! Любой может добавить новость. А лучшие попадут в телеграмм @sdelanounas_ru. Подробнее о том как работает наш сайт здесь👈
21.10.1905:35:16
21.10.1910:03:36
26.10.1919:23:12
21.10.1906:21:11
Байкал5721.10.1907:23:20
21.10.1913:08:27
23.10.1901:01:06
24.10.1900:15:37
23.10.1903:21:15
21.10.1907:59:21
Jub21.10.1908:14:39
21.10.1910:02:56
Jub21.10.1911:39:14
21.10.1913:11:51
Jub21.10.1913:23:57
21.10.1915:39:03
24.10.1900:16:46
21.10.1913:19:28
21.10.1915:29:50
21.10.1915:36:16
21.10.1923:59:00
22.10.1900:04:42
21.10.1915:39:34
21.10.1916:56:03
23.10.1909:13:03
23.10.1912:28:06
21.10.1915:25:14
21.10.1916:49:47
21.10.1917:30:15
21.10.1917:44:12
21.10.1920:18:52
23.10.1909:20:45
23.10.1923:36:17
21.10.1916:00:39
21.10.1916:32:10
21.10.1920:21:02
21.10.1917:27:36
23.10.1903:28:07
21.10.1920:51:52
22.10.1911:52:14
Adx21.10.1922:06:33
21.10.1923:16:36
22.10.1900:03:15
22.10.1916:35:15
22.10.1920:16:22
22.10.1923:20:03
23.10.1903:36:02
23.10.1904:36:09
24.10.1900:02:59
24.10.1906:24:08
24.10.1917:56:34
24.10.1900:05:39
23.10.1909:32:51
23.10.1909:41:59
23.10.1913:03:24
24.10.1900:10:17
24.10.1900:16:03
24.10.1901:06:00
24.10.1906:15:18
24.10.1917:56:55
30.11.1904:30:47
30.11.1909:32:17
24.10.1900:00:26
24.10.1906:33:01
24.10.1918:04:13
24.10.1919:50:18
26.10.1915:25:06
26.10.1916:45:14
26.10.1918:06:20
26.10.1918:41:39
26.10.1920:29:30
26.10.1920:49:27
26.10.1921:24:44
26.10.1921:45:51
26.10.1922:12:03
26.10.1922:14:50
26.10.1922:51:15
27.10.1911:40:24
30.11.1904:56:34
30.11.1909:22:30
23.10.1912:32:06
24.10.1900:21:10
brat_po_razumu24.10.1901:00:25
24.10.1900:24:42
01.01.2118:09:18
02.01.2120:07:15
05.12.2214:48:13