LINUX.ORG.RU

Создание экосистемы свободного ПО для процессоров «Эльбрус»

 


3

6

В ТАСС состоится пресс-конференция, посвященная развитию экосистемы свободно-распространяемого ПО для платформы «Эльбрус».

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

АО «МЦСТ» объявляет о раскрытии исходных кодов ядра linux, системных библиотек, патчей совместимости для ПО с открытым исходным кодом, обеспечивающих работу с архитектурой данной платформы. Этот шаг делается для развития открытого ПО для процессоров «Эльбрус».

>>> Подробности

★★★★★

Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 3)

Ответ на: комментарий от MOPKOBKA
  1. Просто неинициализированная переменная - это вообще ошибка компиляции в Rust и ворнинг во всех вменяемых компиляторах С или плюсов. Так даже не интересно.
  2. Если у Эльбруса нет способа скастить указатель в число и обратно, то эта фича абсолютно неюзабельна для сколь угодно сложного кода. Скорее всего этот способ есть, так что и поле для косяков остаётся.
  3. x86 и UTF-8 нативно не поддерживает, меня это не беспокоит.
  4. В терминах языка это называется fat pointer, ничего не знаю. То, что он работает без необходимости использовать маргинальную платформу только плюс.
Mmmlmlm
()
Ответ на: комментарий от anonmyous

Напомню, что пульсон вышел в 12м.

Интервал между релизами вообще не смущает?

И никто тогда ещё закапывать итаник не собирался.

До-о-о-о #2. То-то крупные поставщики софта забили болт на него, а потом и сам интел в следующем году:

2009: Red Hat announces that it is dropping support for Itanium in the next release of its enterprise OS, Red Hat Enterprise Linux 6.

2011: Oracle Corporation announces that it will stop developing application software, middleware, and Oracle Linux for the Itanium.

2012: SAP discontinues support for Business Objects on Itanium.

2013: Intel cancels Kittson as a 22 nm shrink of Poulson, moving it instead to its 32 nm process.

2013: HP announces that its NonStop servers will start using Intel 64 (x86-64) chips.

liksys ★★★★
()
Ответ на: комментарий от MOPKOBKA

Так вот же, Эльбрус, свободная имплементация RISC-V от университета Англии сливает Эльбрус-8С.

лол а теперь сравни с x86 или arm

hateyoufeel ★★★★★
()
Последнее исправление: hateyoufeel (всего исправлений: 1)
Ответ на: комментарий от Mmmlmlm

Просто неинициализированная переменная - это вообще ошибка компиляции в Rust и ворнинг во всех вменяемых компиляторах С или плюсов. Так даже не интересно.

Аналог

char buf[1000000];
read(FILE, buf, 1000000);

в rust потребует инициализацию перед чтением? А какое предупреждение на это даёт компилятор Си?

monk ★★★★★
() автор топика
Ответ на: комментарий от Mmmlmlm

Если у Эльбруса нет способа скастить указатель в число и обратно, то эта фича абсолютно неюзабельна для сколь угодно сложного кода. Скорее всего этот способ есть, так что и поле для косяков остаётся.

А зачем??? Указатель в число можно. А обратно по стандарту Си в любом случае UB.

monk ★★★★★
() автор топика
Ответ на: комментарий от hateyoufeel

А еще я люблю сравнение Эльбруса-2СВ и МЦСТ-R2000. Вот где сравнение вообще не в пользу Эльбрусов. При схожей производительности, у R2000 энергопотребление в три раза меньше. Потому что волшебный компилятор не тянет оптимизировать код так же хорошо, как предсказатель, и все миллионы дополнительных транзисторов VLIW по сравнению с RISC висят мертвым грузом.

liksys ★★★★
()
Ответ на: комментарий от anonmyous

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

Itanium тут вообще не причём.

Запретили невыровненный доступ к памяти

Как и тут. Это старая фишка вообще всех процессоров, когда на шине памяти экономили.

навязывают стрикт алиасинг

Strict aliasing появился в C89, когда итаника даже в проекте не было. Только его никто не осилил, в лялексе больше половины проектов имеют -fno-strict-aliasing в флагах сборки.

Программеров уже прогибают под тот факт, что им скоро придётся весь свой софт переоптимизировать вручную.

Прогибают-прогибают, а они – твари такие! – не прогибаются!

hateyoufeel ★★★★★
()
Ответ на: комментарий от monk

Да, вроде, он ещё раньше его закрыл.

Я думаю, возможно неправ, из-за того, что

  • хрен спрогнозируешь - есть-ли у тех, кого он на сайте выставлял продукция, актуальна-ли продукция и т.д.
  • у нас же «типа санкции». все делают морду чайником, ничего не делаем, последние примуса починяем (короче, чтобы не светить поставки).
SkyMaverick ★★★★★
()
Ответ на: комментарий от Mmmlmlm

Просто неинициализированная переменная - это вообще ошибка компиляции в Rust и ворнинг во всех вменяемых компиляторах С или плюсов. Так даже не интересно.

Выше разобрал, ты говоришь о простейшем случае.

Если у Эльбруса нет способа скастить указатель в число и обратно, то эта фича абсолютно неюзабельна для сколь угодно сложного кода. Скорее всего этот способ есть, так что и поле для косяков остаётся.

Попробуй почитать стандарт С.

x86 и UTF-8 нативно не поддерживает, меня это не беспокоит.

Да вроде твое спокойствие и не обсуждали.

В терминах языка это называется fat pointer, ничего не знаю. То, что он работает без необходимости использовать маргинальную платформу только плюс.

Мне все равно как оно там называется в Rust, тебе должно быть тоже.

---

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

MOPKOBKA ★★★★
()
Последнее исправление: MOPKOBKA (всего исправлений: 1)
Ответ на: комментарий от krasnh

У нас тут свой эфир, пусть сами подключаются.

liksys ★★★★
()
Ответ на: комментарий от monk

А зачем??? Указатель в число можно. А обратно по стандарту Си в любом случае UB.

По какому стандарту? Вот этому?

7.18.1.4
Integer types capable of holding object pointers
The following type designates a signed integer type with the property that any valid pointer to void can be converted to this type, then converted back to pointer to void, and the result will compare equal to the original pointer:

intptr_t

The following type designates an unsigned integer type with the property that any valid pointer to void can be converted to this type, then converted back to pointer to void, and the result will compare equal to the original pointer:

uintptr_t

Когда-нибудь я таки начну с ЛОРовских сишников брать деньги за чтение стандарта вслух, ведь сами они не могут.

hateyoufeel ★★★★★
()
Последнее исправление: hateyoufeel (всего исправлений: 1)
Ответ на: комментарий от monk

Есть специальный тип в который можно конвертировать, другое дело что это не совсем число, из операций над числом там доступно лишь сравнение равно или не равно. Mmmlmlm видимо хочет их сравнивать через <, >, добавлять к ним что то.

MOPKOBKA ★★★★
()
Последнее исправление: MOPKOBKA (всего исправлений: 2)
Ответ на: комментарий от liksys

До-о-о-о #2. То-то крупные поставщики софта забили болт на него, а потом и сам интел в следующем году:

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

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

Они скоро попробуют ещё раз: когда начнётся массовый исход с х86. Что именно они попробуют - неизвестно. Может, риск-5, а может - снова влив. Скоро узнаем.

anonmyous ★★
()

есть ли смысл сравниваться с Intel? Может быть дело не в технических компетенциях, а в жизненной стратегии?

bp123
()

Ждем порт убунты что ли?

alll81
()
Ответ на: комментарий от anonmyous

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

Нет, не правильно. Убедились они еще в 2013, когда порезали техпроцесс.

Они скоро попробуют ещё раз: когда начнётся массовый исход с х86. Что именно они попробуют - неизвестно. Может, риск-5, а может - снова влив. Скоро узнаем.

RISC, очевидно. Потому что VLIW доказал свою тупиковость для всех, кроме фанатов VLIW.

liksys ★★★★
()
Ответ на: комментарий от monk

XOR linked list существующая конструкция. В красно-черных деревьях любят помечать в цвет в младшем бите указателя. Насколько всё это полезно в реальности - вопрос, но не поддерживать код, который везде работает десятилетиями, потому что где-то написано, что так нельзя - это сомнительная стратегия.

Mmmlmlm
()
Ответ на: комментарий от hateyoufeel

Itanium тут вообще не причём.

Он при том, что все эти штуки для него несут больше всего пользы.

Как и тут. Это старая фишка вообще всех процессоров, когда на шине памяти экономили.

Только вот непонятно, с чем вы спорите. Какая разница, старая это фишка, или нет, если для вливов обращения к памяти надо максимально уменьшать и оптимизировать?

имеют -fno-strict-aliasing в флагах сборки.

Так вот когда перестанут «иметь», то и влив взлетит. Чего непонятного то?

anonmyous ★★
()
Ответ на: комментарий от anonmyous

Он при том, что все эти штуки для него несут больше всего пользы.

Они несут пользу для любой архитектуры.

Только вот непонятно, с чем вы спорите. Какая разница, старая это фишка, или нет, если для вливов обращения к памяти надо максимально уменьшать и оптимизировать?

Для любой архитектуры код работает быстрее при меньшем количестве обращений к памяти. Всегда ваш, Копетан Очевидность!

Так вот когда перестанут «иметь», то и влив взлетит. Чего непонятного то?

Не взлетит. Что непонятного-то?

hateyoufeel ★★★★★
()
Последнее исправление: hateyoufeel (всего исправлений: 1)
Ответ на: комментарий от liksys

Нет, не правильно. Убедились они еще в 2013, когда порезали техпроцесс.

Я про это и говорил, если вы не заметили. Убедились, что утраченных клиентов уже не вернуть, и не стали инвестировать в киттсон столько, сколько планировали. А перевели проект на более низкий приоритет.

anonmyous ★★
()
Ответ на: комментарий от hateyoufeel

Они несут пользу для любой архитектуры.

Минимальную. А для влив - критическую.

Для любой архитектуры код работает быстрее при меньшем количестве обращений к памяти. Всегда ваш, Копетан Очевидность!

Но, однако же, даже АРМы, будучи рисками, всё таки решили поддержать невыровненный доступ на аппаратном уровне, чтобы производительность не проседала. По этому, она только у вливов будет от такого катастрофически проседать.

anonmyous ★★
()
Ответ на: комментарий от anonmyous

Минимальную. А для влив - критическую.

По этому, она только у вливов будет от такого катастрофически проседать.

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

Алсо…

По этому

Иди русский язык выучи уже!

hateyoufeel ★★★★★
()
Ответ на: комментарий от hateyoufeel

Но кроме освоения бюджетов, особого прогресса у МЦСТ пока не замечено.

Новые процы есть? Есть. Оборонка железо получает? Получает. Какой прогресс ты хочешь? Кто девушку ужинает, тот её и танцует.

skiminok1986 ★★★★★
()
Ответ на: комментарий от qbbr

поиграться с железякой - да, может быть и портировал что-то, чисто JustForFun.

Это было бы неплохо.

а разве не с этого начиналась эпоха линукса и спо? JFF

Тут лучше смотреть с чего начинался Intel. С чего начинались процессоры Motorolla и прочие Sparc.

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

skiminok1986 ★★★★★
()
Ответ на: комментарий от anonmyous

Я про это и говорил, если вы не заметили.

Это я об этом говорил. А ты говорил туманно про ушедший поезд и тряс ядром, вышедшим в 2017. После того, как я показал, что закапывать его началя еще в районе 2010, поменял риторику и начал вилять жопой.

liksys ★★★★
()
Ответ на: комментарий от hateyoufeel

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

В частности, пока программеров ни прогнут на использование лайкли/анлайкли, на соответствие стрикт алиасингу, на отказ от невыровненных доступов к памяти, и тд. Как и в случае с мультитридингом, будут прогибать.

anonmyous ★★
()
Ответ на: комментарий от qbbr

а вот цена - уже другое дело, должно быть доступно как и для покупателя, так и для его кошеля

А вот конечная цена зависит по большей части от объёмов производства. Пока партии мелкие, цены будут конские. Просто потом, что надо окупать как минимум разработку.

skiminok1986 ★★★★★
()
Ответ на: комментарий от anonmyous

В частности, пока программеров ни прогнут на использование лайкли/анлайкли, на соответствие стрикт алиасингу, на отказ от невыровненных доступов к памяти, и тд. Как и в случае с мультитридингом, будут прогибать.

лол вот это фантазии! Видимо, VLIW таки никогда не случится. Ведь кроме компилятора теперь нужен будет ещё и прогибатор!

hateyoufeel ★★★★★
()
Последнее исправление: hateyoufeel (всего исправлений: 2)
Ответ на: комментарий от MOPKOBKA

но я открою тайну, все что угодно можно реализовать таким образом, хоть полный эмулятор эльбруса

Виртуализация, виртуальная память, прерывания, SIMD все требуют аппаратной поддержки для полноценной работы. А проверка границ массива нет. Зачем решать аппаратно то, что решается на более высоком уровне абстракции, да еще и лучше?

Mmmlmlm
()
Ответ на: комментарий от liksys

Это я об этом говорил. А ты говорил туманно про ушедший поезд и тряс ядром, вышедшим в 2017.

Понять, что поезд ушёл и клиентов уже не вернуть - можно и за 5-7 лет до закапывания проекта. Так вот, закопали они его в 17 или в 19, в зависимости от того, как считать. Но уж точно не после выпуска пульсона. А вот маркетинговый отдел убедился в том, что рынок безвозвратно утерян - в 13 году, что и сказалось на финансировании проекта.

anonmyous ★★
()
Ответ на: комментарий от SkyMaverick

Про вопли - сомнительно (из-за нишевости), но если честно, политика, когда «вендор продает и железо, и софт» и нет никаких альтернатив софту очень странная, если вендор заинтересован в продаже железа...

X-Pilot ★★★★★
()
Ответ на: комментарий от Mmmlmlm

А проверка границ массива нет. Зачем решать аппаратно то, что решается на более высоком уровне абстракции, да еще и лучше?

Heartbleed некоторых ничему не научил...

X-Pilot ★★★★★
()
Ответ на: комментарий от hateyoufeel

Ведь кроме компилятора теперь нужен будет ещё и прогибатор!

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

Ровно то же самое происходило с мультикорками: стали появляться соотв камни, NPTL, убрали биг кернель лок, ОпенМП выкатили… И программеры подумали: чёрт, ну ок… Придётся, видимо, всё переписывать. :)

anonmyous ★★
()
Ответ на: комментарий от X-Pilot

если вендор заинтересован

Вендор-то как раз заинтересован. Проблема в том, что разработка велась в рамках ОКР по госконтракту. Соответственно, без разрешения заказчика наработки ты открыть не можешь. Видимо, разрешение получено.

SkyMaverick ★★★★★
()
Ответ на: комментарий от Mmmlmlm

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

Какое определение у «полноценной работы»?

MOPKOBKA ★★★★
()
Ответ на: комментарий от anonmyous

Прогибатор - это те самые стандарты…

… на которые и программисты, и вендоры успешно кладут хер уже 30 лет.

Ровно то же самое происходило с мультикорками: стали появляться соотв камни, NPTL, убрали биг кернель лок, ОпенМП выкатили… И программеры подумали: чёрт, ну ок… Придётся, видимо, всё переписывать. :)

Нет, не то же самое.

Ладно, с тобой бесполезно общаться. Ты кроме своих влажных фантазий про нагибание программистов ради светлого VLIW будущего ничего не напишешь.

hateyoufeel ★★★★★
()
Последнее исправление: hateyoufeel (всего исправлений: 2)
Ответ на: комментарий от liksys

было бы странно, если бы создатели сабжа были бы не в курсе проблем с их творением ;)

bp123
()
Ответ на: комментарий от hateyoufeel

… на которые и программисты, и вендоры успешно кладут хер уже 30 лет.

Да нет, не кладут. Давно уже привили программерам культуру писать без варнингов и без всяких -fno-xxx. Это раньше, лет 20 назад, кому скажешь «добавь инклуд, варнинг же!», а тебе в ответ «а не пох на варнинг?». Сейчас большинство людей свои прожекты с -Werror собирают и прогоняют через убсан регулярно, который невыровненный доступ и прочую ересь не пропустит.

anonmyous ★★
()
Ответ на: комментарий от X-Pilot

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

Mmmlmlm
()
Ответ на: комментарий от MOPKOBKA

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

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

Mmmlmlm
()
Ответ на: комментарий от anonmyous

Да нет, не кладут. Давно уже привили программерам культуру писать без варнингов и без всяких -fno-xxx.

Дядя, ты на linux.org.ru. Открой исходники ведра люникс и подивись -fwrapv, -fno-string-aliasing, вагону -Wno-xxx и прочим отходам от стандартов. Сам Торовалтос множество раз писал, что срал он на стандарты.

hateyoufeel ★★★★★
()
Последнее исправление: hateyoufeel (всего исправлений: 2)

@Somebody, ты что-то хочешь мне сказать, радость моя, но стесняешься? В прошлом треде вон какой боевой был, а тут - молчок.

liksys ★★★★
()
Ответ на: комментарий от DrRulez

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

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

gns ★★★★★
()
Последнее исправление: gns (всего исправлений: 1)
Ответ на: комментарий от hateyoufeel

Дядя, ты на linux.org.ru. Открой исходники ведра люникс и подивись -fwrapv, -fno-string-aliasing, вагону -Wno-xxx и

Ядро - оно и в Африке ядро, это фристендинг энвайронмент. А кроме того, открыл, и, кроме -fno-strict-aliasing и -fno-delete-null-pointer-checks, ничего особо в глаза и не бросается. Если я правильно понимаю, со стрикт-алиасингом просто не всё пока так гладко в самом стандарте. Людям надо кастовать из байт-стрима в различные типы, а им говорят «используй мемкопи во временную переменную», что нифига не оптимизация. Над этим пока работают.

прочим отходам от стандартов. Сам Торовалтос множество раз писал, что срал он на стандарты.

Ему можно, и даже нужно это делать. Люди начинают шевелиться, и допиливают стандарт, чтобы его устраивало.

anonmyous ★★
()

Зря конечно К. Трушкин к Бабаяну постоянно апеллирует. В. Бурцев, создатель первых «Эльбрусов», весьма нелестно о нём отзывался, равно как и о его Эльбрусе-3.

Second_Variety
()
Ответ на: комментарий от Mmmlmlm

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

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

MOPKOBKA ★★★★
()
Последнее исправление: MOPKOBKA (всего исправлений: 2)
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.