Наткнулся в комментариях под видеозаписью выступления своего коллеги Андрея Савченко у Максима Горшенина на ссылку как бы на аналитику с причитаниями выводами «всё плохо на этом вашем эльбрусе».
Почитал, вздохнул, решил написать с точки зрения практика не комментарий, но ответ, в некоторой мере стилизовав его под пародию и тем не менее всерьёз. В конце концов, к фронтовому сетевому новостному агентству 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, и пресловутое «мало софта, трудно обмениваться» -- только вот проблемы практики решают применением двуручного рашпиля, а не нытьём.
Источник
Источник: imaxai.ru | CPU Эльбрус | Россия | Горшенин Максим