Эльбрус/faq: различия между версиями
м (→ЧаВо по Эльбрусу: +ликбез по мотивам рассказа Константина Трушкина) |
м (→применение: +как перенести свои программы на Эльбрус? (из "ответов на вопросы" Константина Трушкина)) |
||
Строка 15: | Строка 15: | ||
* [http://www.elbrus.ru/migracionnaya-gis-pereekhala-s-ibm-na-elbrusy-i-spo МВД РФ] | * [http://www.elbrus.ru/migracionnaya-gis-pereekhala-s-ibm-na-elbrusy-i-spo МВД РФ] | ||
* [http://www.imaxai.ru/single-post/2019/10/31/elteza РЖД] | * [http://www.imaxai.ru/single-post/2019/10/31/elteza РЖД] | ||
=== [https://www.youtube.com/watch?v=f_hwK0zM9y8&t=29m17s Как перенести свои программы на Эльбрус?] === | |||
Q: Что учитывать в начале разработки, чтобы потом проще было портировать? На каких языках писать, какие существующие библиотеки использовать? | |||
A: Чтобы писать программы, которые хорошо [[эльбрус/портирование|портируются]] на Эльбрус, надо не завязываться ни на одну конкретную платформу; на сегодня написанное кроссплатформенно на языках [[эльбрус/lcc|C и C++]] скорее легко переносимо и на e2k (при условии, что уже перенесено на Linux без привязки к каким-либо закрытым библиотекам). Важно, чтобы не было [безусловных] ассемблерных вставок или других сильно зависимых от архитектуры фрагментов кода. Кроме того, см. раздел [http://mcst.ru/programmnoe-obespechenie-elbrus "Программное обеспечение"] на сайте МЦСТ, где доступны списки пакетов ОС Эльбрус (и [[ports/e2k|страничку порта ОС Альт]]). | |||
== доступность == | == доступность == |
Версия от 12:28, 5 мая 2020
ЧаВо по Эльбрусу
ликбез
Почему процессор называется российским, если всё делается за рубежом?..
A: Современная индустрия движется к очень небольшому количеству фабрик: чем меньше технологический процесс, тем дороже оборудование; при этом мощности такой фабрики может хватить на половину всего мирового спроса. Услугами TSMC и Samsung пользуются те же Apple, NVIDIA, AMD.
A: Самое главное -- кто спроектировал микросхемы. Если мы, то можем переходить с одной фабрики на другую.
A: Что касается ПО, то очень существенную часть мы делаем сами (это в первую очередь компилятор, порядка 2 млн строк кода); кроме того, сотни тысяч строк кода вносим в ядро Linux, чтобы работало на процессоре Эльбрус; а где возможно, берём свободное ПО, которое развивается всем миром, в том числе и российскими программистами. Здесь важно то, насколько удаётся обеспечить собственный цикл поддержки этого ПО; мы сами развиваем ОС Эльбрус (Эльбрус Линукс).
применение
Интересно, где используется Эльбрус?
A: Изначально -- в оборонке, которая его и спасла от уничтожения в угоду копированию по решению политиков 1967 года; в наши дни -- уже много где, но по сути пока в госсекторе и госкорпорациях:
Как перенести свои программы на Эльбрус?
Q: Что учитывать в начале разработки, чтобы потом проще было портировать? На каких языках писать, какие существующие библиотеки использовать?
A: Чтобы писать программы, которые хорошо портируются на Эльбрус, надо не завязываться ни на одну конкретную платформу; на сегодня написанное кроссплатформенно на языках C и C++ скорее легко переносимо и на e2k (при условии, что уже перенесено на Linux без привязки к каким-либо закрытым библиотекам). Важно, чтобы не было [безусловных] ассемблерных вставок или других сильно зависимых от архитектуры фрагментов кода. Кроме того, см. раздел "Программное обеспечение" на сайте МЦСТ, где доступны списки пакетов ОС Эльбрус (и страничку порта ОС Альт).
доступность
Может, пора уже пойти в народ? Возможно ли это на данном этапе или нет и почему?
A: Давно пора, давно... ещё в прошлом году было уже время, как по мне.
Прямо сейчас "выходу эльбруса в народ" мешают в первом приближении два фактора, насколько знаю:
- себестоимость (изготовление и корпусирование СБИС в мелких партиях -- это *дорого*, изготовление плат и систем на них в количествах порядка ста штук -- тоже слишком ручная работа);
- NDA (которое с МЦСТ сейчас подписывают юрлица-покупатели).
Последнее обусловлено не только МЦСТ (по любым причинам) -- с причастными третьими сторонами мы вместе работаем, но там не всё так просто и быстро, как хотелось бы (хотя самая инертная, казалось бы, сторона как раз пошла навстречу). Здесь маячком будут дальнейшие новости от МЦСТ по части PDK -- а сейчас и мне как частному лицу продать не могут, хотя уже созрел купить домой. mike@
Тем не менее сильно желающие могут оформить/задействовать ИП и обзавестись "Эльбрусом" уже сейчас.
Ну а по первому... оценки, которые я видел -- стоящий сейчас триста с хвостиком тысяч 801 можно продавать по 70--80 т.р., если изготавливать в партиях порядка 10 тысяч штук (одноядерник, сейчас стоящий примерно вдвое дешевле -- ниже 50, соответственно). Это ещё далеко не ценовая конкуренция с x86, но уже гораздо ближе к ней даже не по меркам военных (насколько знаю, один доверенный BIOS выдать на-гора -- ещё та часть затрат, не говоря о малотиражном же исследовании чипов).
железо
Зачем ECC-память на не-сервере?
A: на рабочих станциях вообще-то тоже применяется нормальная память (и в больших объёмах); но главное тут то, что встроенный в процессоры "Эльбрус" контроллер памяти помимо эффективной кодировки ECC хранит в дополнительных девятых битах ещё и информацию о тегировании областей памяти для защищённого режима.
Почему только Radeon?
вопрос пользователя crypt
A: на чём-то надо было остановиться в качестве видеоакселератора, а для Radeon есть свободные драйверы приличного качества (nouveau от них отстаёт, хотя между закрытыми драйверами для видеокарт ATI/AMD и NVIDIA сравнение выходит ровно противоположное.
A: вскоре может измениться, на свежих выпусках OSL уже вовсю экспериментируют с nouveau и на некоторых картах получают неплохие результаты.
Теплораспределительная крышка припаяна к кристаллу или на термопасте?
A: теплопроводящий клей.
Защита от перегрева есть?
A: Есть, есть -- 8С на 1300 МГц без радиатора (в миллиметре от него) примерно через минуту отключает.
разное
Почему при работе ntpd сильно уходит время?
A: непонятно, но замечено, что так "работает" openntpd; рекомендуем chrony, с ним всё хорошо.
Есть ли в репозитории wine?
A: wine имеет смысл портировать и собирать на платформах, для которых существует порт Windows (и соответственно приложения для него) -- например, WINE для x86_64 умеет запускать только win64-приложения, аналогично для ARM; поскольку на e2k не существует такоо ABI и приложений, то и "родной" wine не имеет смысла. При необходимости запускать именно Windows-приложения на ВК "Эльбрус" можно воспользоваться бинарным транслятором либо в виде связки rtc+wine, либо в режиме "вся машина" (lintel).
Как подключить EPEL?
A: подключать есть смысл репозитории, подходящие для применяемых дистрибутива и платформы; по состоянию на январь 2020 года RHEL и соответственно EPEL для платформы e2k не наблюдается (равно как и Ubuntu+PPA или openSUSE+OBS).