LINUX.ORG.RU

Опубликована система команд Эльбрус

 


1

4

http://elbrus.ru/efficient_elbrus_programming_book_2020-05

Кто хочет написать свой компилятор или доработать gcc/clang/whatever — велкам!

ЗЫ Кто хочет написать новость - тоже велкам.

Перемещено Zhbert из linux-hardware

★★★★★

Ответ на: комментарий от minihic112

Без его упрощения ты не сможешь ничего.

а с упрощением - опять же не сможешь ничего, но уже в другом.

Современный суперскаляр так же зависит от компилятор и так же всё перенесено на компилятор/программиста. Потому как суперскаляр упёрся в свой потолок лет 20 назад.

никуда он не уперся. а vliw - тот уперся, да. почему никто вменяемый его не тулит в CPU. в DSP - да, там нужна тупая числодробильня с минимальным потреблением.

Всё это делается на будущие и для тех, кто это использует. А говно как показывало одну и ту же производительность - так и показывает.

+5-10% на микроархитектуру таки имеется на равных частотах. на одном и том же коде, да. за счет оптимизации того самого суперскаляра.

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

таки примитивная и убогая. «мы не смогли в run-time оптимизатор потому тупо набили 100500 блоков, дали вам к ним прямой доступ и загружайте их сами чем хотите и как хотите - ваши проблемы»

Глубина познаний лоровских звятипездочников просто поражает.

anonymous ()
Ответ на: комментарий от NiTr0

таки примитивная и убогая. «мы не смогли в run-time оптимизатор потому тупо набили 100500 блоков, дали вам к ним прямой доступ и загружайте их сами чем хотите и как хотите - ваши проблемы»

Тоже самое можно сказать и о суперскаляре. Область состоит из колхозников, которые не осилили писать код. И тот мусор, что они пишут - требует суперскаляра.

Но в любом случае да, мотивация их понятна. Но это не касается влива и его потенциала. К тому же тоже самое касается и суперскаляра. Иди выкинь все архитектуро-специфичные оптимизации из компилятора. Вернёшься опять в 95.

minihic112 ()
Ответ на: комментарий от NiTr0

Кстати, никаких 100500 блоков там нет. Да и блоки у них слабее. Я об этом писал выше - у них крайне низкий уровень параллелизма, не особо больший, чем у бека штеуда. Это ещё без учёта симдов.

По поводу слабее - у них слишком большие задержки у операций не взирая на низкую частоту и достаточно хороший(по крайне мере по номиналу) техпроцесс.

minihic112 ()
Ответ на: комментарий от NiTr0

VLIW не использовали, т.к. на момент когда тот же интел с ним возился, его развитие было дороже чем суперскаляр, поэтому они просто решили плыть по течению и пожинали плоды доступных оптимизаций и уменьшения техпроцесса, теперь уже спорить бесполезно, т.к. очевидно что потолок уже достигнут и после 5 нм суперскаляр развиватся не будет, скорее тот же интел будет просто по чуть-чуть откатывать старые решения, наподобии HyTh дабы добавить ядра и возможно будут увеличивать площадь кристалла и количество физических чипов, но там то же чуда не будет, т.к. издержки часто выше получаемого прироста, поэтому ожидаемо, что к 30-ому году и АМД и Интел вспомнят про VLIW, интел будет пытаться в видеокарты(хотя уже как бы ходили слухи), ну и конечно будет переход на специализированные чипы под задачи.

AKonia ()
Ответ на: комментарий от NiTr0

а с упрощением - опять же не сможешь ничего, но уже в другом.

Нет, сможешь.

никуда он не уперся.

Упёрся.

а vliw - тот уперся, да.

Ога, его потенциал безграничен. Чисто номинально и с этим ты ничего не сделаешь. Суперскаляр уже давно в дерьме. Единственное, что его спасает - это smt. Но опять же, из-за мусорной архитектуры на х86 smt говно и толку с него не много.

почему никто вменяемый его не тулит в CPU.

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

Если бы им кто-ко компенсировал эти затраты - я очень сомневаюсь, что они выбрали бы путь влива.

в DSP - да, там нужна тупая числодробильня с минимальным потреблением.

Нихрена. Там нужна производительность, которой нету и никогда не будет у суперскаляра. Если бы она была - никто бы никакие dsp не производил.

+5-10% на микроархитектуру таки имеется на равных частотах.

Нет, никаких 5-10% там нет. Тебя обманули - меньше слушай агиток рекламных.

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

К тому же ссылаться на x86 - вообще наивно. Оно упирается не просто в суперскаляр, а во убогую архитектуру.

И о чудо, никто её почему-то не меняет. А почему же? Наверное потому, что рынком не правит «лучше». Рынком правит легаси, маркетинг и сложность.

Легаси говно не даёт интелу сменить архитектуру, но и интел её не хочет менять. Потому что он вложил в неё немерено бабла. И выкини её - всё это бабло тут же умножится на ноль и стена, которая отделяет интел от конкуренции - исчезнет.

Тоже самое с суперскаляром. Это такая же стена. Если завтра всё перейдёт на софтварный уровень - это похоронит и интел и всех остальных.

К тому же интел сам пытался заняться вливом, когда суперскаляр упёрся в потолок. Но не фортануло. Во-первых его суперскаляр был таким же дерьмом(ещё похуже эльбруса), во-вторых колхозники под него писать не будут, очевидно.

А далее был бум компиляторов, amd64, расширений. А самое главное видях. И интел понял, что единственное его конкурентное преимущество относительно видях(с их вливами) - это как раз таки те самые колхозники.

И дегарадация и говно - это золото для интела. Т.е. чем боле дремучая и недалёкая его ЦА - тем меньше шансов, что она слезет с х86.

Развивать влив - полностью сменить парадигму мышления у ЦА, а значит дать им выход и снять с вендорлока.

Поэтому есть симды, есть расширения - тот кто нужно, научится. А лучше блобы дать - зачем рабам учиться. И всё. Все твои.

на одном и том же коде, да. за счет оптимизации того самого суперскаляра.

Нет.

minihic112 ()
Ответ на: комментарий от anonymous

Кстати, а как на ситуацию с компилятором по NDA и закрытыми опкодами вкупе с частью инструкций (раньше вообще без них) смотрит ФАС?

Антимонопольное законодательство не распространяется на правообладателей.

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

Да и опять же ИМХО зря разработчики взяли за основу существующие компиляторы, связность существующего кода сильно сказывается на скорости развития, хотя и даёт ускорение в задачах переноса x86 ПО на Эль.

Если бы делать ещё и собственный компилятор — сегодня системы на Эльбрусе стоили бы полмиллиона, а не 100к рублей.

Потому что скорость выхода на рынок важна.

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

после 5 нм суперскаляр развиватся не будет

Дак там и так ничего не развивается уже лет 10. Самое интересное, что даже те крохи, которые интел получает - заложены туда изначально.

Вот возьмём тот пример, который описан в книге. Там как раз таки взят хасвел и idiv, который в x86 такое дерьмо, что перегнать инт в дабл поделить и перегнать обратно работает раза в 2 быстрее.

И вот они это чинят, ахренеть. Это проблемы 15 лет. Они её не трогали всё это время. И вот она - инновация.

Тоже самое с плавучкой. Давайте ка мы специально поломает сложение. пусть сложение будет медленнее fma, а что - норм. А вот в скайлейке мы его починим и бам всё быстрее заработает.

А ну cmov наконец-то сделали не говном. Да, бп настолько гениален, что мы будет будет вводить предикаты для инструкций. Суперскаляр ведь. Главное не перепутать.

Т.е. весь профит - это либо улучшение бека - тех самых «блоков», либо увеличение кешей за счёт техпроцесса. Всё это никакого отношения к суперскаляру не имеет.

поэтому ожидаемо, что к 30-ому году и АМД и Интел вспомнят про VLIW

Они будут тянуть до последнего. Сейчас всё настолько сильно деградирует, что сомнительно, что к 30-ому году кто-то физически сможет массово перейти на что-то адекватное.

Все будут жрать дерьмо.

minihic112 ()
Ответ на: комментарий от AKonia

ИНЭУМ Брука и вроде МЦСТ по сути для эльбрусов делает только ПО и верификацию, разработка железа лежит на ИНЭУМ.

Внезапно ;-)

Разработкой и железа и софта занимается МЦСТ. ИНЭУМ — академический институт, это не его задачна. Тут обычная коллаборация, нет разделения на то, что кто делает.

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

так всё просто, да вот что-то на практике нет рипперам замены. и нет, далеко не всем нужен x86

Ну почему, уже сейчас можно смотреть в сторону Taishan, но проблема других архитектур вовсе не в производительности.

Проблема любой современной не-x86 архитектуры состоит в том, что только на x86_64 сегодня есть приличная аппаратная виртуализация. Всё остальное — производительность (или производительность на ватт), наличие-отсутствие софта, стоимость, защищённость — не так критично в массовой эксплуатации.

По этому поводу в пятой версии микроархитектуры Эльбруса будет аппаратная виртуализация. Сравнится ли она с возможностями x86? Увидим. Когда будет релиз? Не знаю. Поддержку KVM могу обещать уверенно.

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

Я не спорю, но допускаю, что возможно написание своего компилятора стоило +- столько же, т.к. при готовом, вязкость кода очень занижает темпы(меньше гибкость - меньше скорость), плюс разве что заключается в том, что разработчикам не требуется глубоко вникать в тонкости совместимости Линукса и ПО под него относительно реализации фронтенда, а требуется в основном делать акцент на архитектурные особенности, но там плоть от плоти кода под RISC, поэтому почти весь бэкэнд под перезапись в частности и оптимизатор, а это на вскидку 90% работы для компилятора Си99 и 80% для компилятора Си++03, да им не так много нужно возится со стандартами, но связанность кода замедляет работу невелируя весь выигрыш, если конечно в действительности дела не обстоят так, что внутри gcc был готовый бэкэнд, а эльбрус на самом деле хитрым образом скопированный в середине нулевых итаниум, перепрофилированный под советский бренд, тогда им по сути нужно было бы просто доделать существующий код, но это скорее конспирология :)

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

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

Нет, это не так.

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

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

AKonia ()
Ответ на: комментарий от Aceler

ИМХО тогда, стоимость да и время собственного компилятора сопоставима и из бросающихся в глаза явных минусов было бы необходимость возится со стандартами Си++, а плюсы в меньшем размере компилятора и гибкостью его организации и широкую оптимизацию, можно было бы поднять «модульность», gcc сейчас очень вязкий и жирный из-за чего некоторые даже простые баги сложно локализовать и иногда даже исправить

AKonia ()
Ответ на: комментарий от Aceler

По этому поводу в пятой версии микроархитектуры Эльбруса будет аппаратная виртуализация.

Э8СВ – v5 без виртуализации. Э16С – v6 с виртуализацией.

anonymous ()
Ответ на: комментарий от AKonia

Ога, с таким подходом их будут тысячи.

тупо на госдотациях и военном заказе

У тебя государство другое, время другое. Тех бюджетов ты никогда не получишь.

нужно поддерживать государство в развитии микропроцессорной техники и наноэлектроники

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

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

Помощь должна помогать, но без должного контроля это не работает. И это ключевое отличие. Когда развивалось что-то там - оно развивалось хоть и на горбе государства, но в рамках рынка.

У тебя же какая-либо конкуренция пропадает сразу. Никто тебя ничего не лишит, а зачем тебе тогда слезать с горба? Вот ты и будешь сидеть на горбе, что мы и наблюдаем.

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

Ты задаёшь адептов вопрос - как ты собрался чего-то добиться. А молчёк, игнор. Уровень самих адептов крайне мал, но сведём это к проблемы кадров - проблеме среды, а не конкретной компании.

Любая попытка что-то спрятать - это боязнь конкуренции. Это боязнь разоблачения. И если интелу это позволено делать - его конкуренция обязывает хоть как-то развиваться, то у тебя этого механизма нет.

Ах да, и ещё кое что важное. Хотя я об этом упоминал выше. В том самой стране бабло лилось всем, его было дохрена. Его никто не считал. Это и породило конкуренцию.

В данном случае всё плохо. Бабла нет, параллельно вести разработку 10 эльбрусов 10 разными компаниями - нет возможности. А в 50-80 это так и происходило там. И вот какие-то бабки уже влиты в эльбрус - и всё, это вендорлок.

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

minihic112 ()
Ответ на: комментарий от Aceler

Оно и клиентам не надо, у клиентов есть ассемблер от МЦСТ, под NDA закрыт только компилятор.

А можете выложить исходные коды gnu binutils и gdb для Эльбруса куда-нибудь на гитхаб? NDA это запрещает делать, или нет?

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

Тоже самое можно сказать и о суперскаляре. Область состоит из колхозников, которые не осилили писать код. И тот мусор, что они пишут - требует суперскаляра.

любой ветвящийся код требует суперскаляра. не требует суперскаляра только тупая числодробильня, которая давно и успешно считается на специализированных процессорах типа GPU/DSP.

Иди выкинь все архитектуро-специфичные оптимизации из компилятора. Вернёшься опять в 95.

по-вашему, каждая софтина компилится под конкретную микроархитектуру что ли?… разинца между generic target и архитектурной оптимизацией едва ли десяток-другой % наскребется (опять же - кроме специфичных числодробилен, заточенных на AVX)

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

Кстати, никаких 100500 блоков там нет. Да и блоки у них слабее. Я об этом писал выше - у них крайне низкий уровень параллелизма, не особо больший, чем у бека штеуда. Это ещё без учёта симдов.

до 23 одновременных (микро)операций. и до 8 что ли паралленьных операций в слове, что какбы жирно - но реально бесполезно чуть более чем полностью на generic софте. не, в числодробильнях оно выстреливает - но это же ЦП, а не DSP. как DSP он уныл даже по сравнению с C66x.

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

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

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

и да, интел с VLIW никогда не возился. EPIC - не VLIW.

что к 30-ому году и АМД и Интел вспомнят про VLIW

не вспомнят, ввиду его полной бесперспективности для generic вычислений. VLIW - удел всяких микроядрышек типа тайлеры и DSP.

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

Ога, его потенциал безграничен.

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

Почему ты решил, что железяка сложнее софтварного уровня? Нихрена она не сложнее.

дада, совсем не сложнее :) предсказать какая ветка будет исполняться с большой вероятностью при еще неизвестных результатах вычислений, выбрать из нее команду которая не зависит от результатов еще не выполненных вычислений, загнать ее на исполнительное устройство и придержать прочие пока команда не исполнится - подумаешь фигня какая, в кремнии реализовать, еще чтобы и в реалтайме на частоте ядра шуршало :)

Нихрена. Там нужна производительность, которой нету и никогда не будет у суперскаляра.

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

Нет, никаких 5-10% там нет. Тебя обманули - меньше слушай агиток рекламных.

берете сэнди бридж. берете какой-нить бенч. запускаете, смотрите попугаи. берете какой-нить *лейк. берете тот же бенч. фиксируете частоту на частоте сэнди бриджа. запускаете, смотрите попугаи. сравниваете, посыпаете голову пеплом.

далее, берете какой-нить gcc 4.4 например. компилите ним приложение бенча (желательно - на С, не С++), запускаете, смотрите результаты. потом берете gcc 9.x, компилите и запускаете тот же бенч. эдак в 90% случаев разница в производительности будет в пределах погрешности.

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

К тому же интел сам пытался заняться вливом, когда суперскаляр упёрся в потолок.

никогда он не пытался заниматься вливом, там все-таки не идиоты сидят - пилить архитектуру, у которой ABI ломается при любом расширении ядра. итаники - ни разу не VLIW, хоть и отдаленно похожи.

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

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

JIT называется. Другое дело, что сделать JIT для эльбруса который это всё будет вытворять, задачка титанической сложности и сделают её скорее всего в районе никогда.

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

Там же в треде уже всё обсудили. По второму кругу начинать чтоли?

Вопрос «Где исходники, почему их никто еще не выложил?» все еще в силе. Вопрос о том, запрещают ли МЦСТ через какие-то NDA выкладывать исходники от GPL/LGPL-софта, требуют ли они подписаний каких-либо NDA для получения исходников от GPL/LGPL-софта для тех людей, у которых есть бинарники - тоже в силе. Жду ответа.

SZT ★★★★ ()
Последнее исправление: SZT (всего исправлений: 4)
Ответ на: комментарий от NiTr0

любой ветвящийся код требует суперскаляра

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

Никакой ветвящийся код не требует суперскаляра и никакой суперскаляр не умеет в ветвящийся код. У тебя проблемы с методичкой.

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

не требует суперскаляра только тупая числодробильня

Ты ничего не знаешь ни о теме, ни о коде, ни числодробильнях. Потому что иначе ты бы такую херню не нёс.

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

которая давно и успешно считается на специализированных процессорах типа GPU/DSP.

В мечтах. Меньше потребляй пропаганды. К тому же, у тебя опять поломалась методичка. Никаких «специализированных процессоров нет». Просто есть те области, в которых требования выше. И там уже такое говно как суперскаляр не работает и его там нет.

И именно этим обусловлено существование этих процессоров, а не твоими фантазиями.

Это та же песня, что и «язык под задачу» и прочая чушь. Нету никаких специализированных языков. Специализированный язык - это дсл/асик. Ни dsp, ни gpu ими не являются.

Точно так же всякая скриптуха существует не потому, что она нужна. А потому что есть множество тех, кто ничего другого не сможет. А какой-нибудь С++ существует не потому, что он нужен - его давно бы уже выкинули. Просто там, где он нужен - требования выше. Это базовые принципы разделения труда.

по-вашему, каждая софтина компилится под конкретную микроархитектуру что ли?…

Да ты ведь нихрена не знаешь. Зачем пытаешься спорить и о чём-то рассуждать? Ты услышал архитектура, оптимизации и решил мне сообщить о том, что слышал? Дак тебе заранее сообщили, что оптимизации архитектурные.

Никаких микроархитектурные оптимизаций в компиляторах почти нет. Это в принципе не выгодно, да и архитектура компиляторов к этому не располагает. Поэтому влияние этого флажка в основном сводится к доступным кодогену инструкциям.

Только вот генерик - это core2, который уже суперскаляр и мало чем отличается от современного. Но что самое интересное - никто даже этим не заморачивается. И несмотря на твой generic компилятор генерирует уже оптимизированный код под актуальные архитектуры.

Потому что никто не занимается древним дерьмом. И все насрать как оно работает.

разинца между generic target и архитектурной оптимизацией едва ли десяток-другой % наскребется

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

(опять же - кроме специфичных числодробилен, заточенных на AVX)

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

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

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

Да и проблема там много. Мало памяти, дорогой дабл(цена ~на уровне х86), ну и множество подходов дерьма и задач дерьма.

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

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

Допустим, чего далеко ходить. Одна из таких задач - рейтрейсинг. И нвидия всю архитектуру перелапатила для его ускорения.

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

minihic112 ()
Ответ на: комментарий от NiTr0

до 23 одновременных (микро)операций.

Нет, это чушь. Меньше пропаганды потребляй. Хотя в целом ничего иного я не ожидал. 23 - это маркетинговый булшит. Это посчитана всякая шизофрения, которая считаться не может и которой в суперскаляре столько же, если не больше.

и до 8 что ли паралленьных операций в слове, что какбы жирно

Полная чушь. х86 обладает таким же уровнем параллелизма.

что какбы жирно - но реально бесполезно чуть более чем полностью на generic софте.

А пацаны то не знали. Вот птушники в интеле работают. Делают бесполезные вещи. А там другие суперскаляры ещё больше делают. Там все 20 реальных операций будет.

А интел отстаёт(ну как отстаёт - на уровне эльбруса) лишь потому, что у него фронтенд дерьма из-за архитектуры дерьма.

не, в числодробильнях оно выстреливает - но это же ЦП, а не DSP. как DSP он уныл даже по сравнению с C66x.

Никуда оно не выстрелит. Тебя опять наелся пропаганды - чини методичку. На числодробильнях у интела уровень параллелизма всего то каких-то пару сотен+ операций(если считать так же, как были посчитаны те 23) за такт на даблах.

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

minihic112 ()
Ответ на: комментарий от NiTr0

как только VLIW с помощью некоего волшебного конпелятора в рантайме сможет разворачивать циклы

Зачем ты опять несёшь херню. С каждым разом всё более и более позорную. Во-первых никто никакие циклы не разворачивает - ты опять всё перепутал. А во-вторых эльбрус умеет циклы «разворачивать» в рантейме. Представляешь. Какая новость. Правда это ненужно.

и предсказывать ветвление

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

дозагружая исполняемые блоки последующими командами из нужной ветки

Да эти познания в очередной раз будоражат воображение. Никаиких блоков не существует, никакие блоки суперскаляр не загружает. Блки загружает там такой же влив.

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

  • так сразу и приходите. а без этого - возвращаемся в 95-й год к пню 1, разве что обросшему конвейерами и с явным указанием какую инструкцию на какой конвейер кидать.

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

дада, совсем не сложнее :)

Да, да.

предсказать какая ветка будет исполняться с большой вероятностью при еще неизвестных результатах вычислений

Я понимаю, что рядовым пхпистам сложно понять как что-то работает и они ничитавшись пропаганды начинают молиться и поклоняться всему нипонятному.

Но никакие ветки не предсказываются, никаких результатов вычислений нет. Всё это не имеет никакого отношения к суперскаляру. И всё это было до суперскаляра. Это всё про конвейеризацию. Повторю, почитай букварь.

95% работы bp - это примитивный сбор статистики для лупов. Ничего он предсказать не может. Всё его развитие ограничивается банальным расширением буферов.

И работает он следующим образом. Твоя говнокод долбится в цикле. bp не работает. Далее он тысячи раз фейлится(да, гений, никакой твой нелепой херни «не зная результатов» там нет). И вот зная результаты - он пытается подобрать паттерн.

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

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

Ничего никуда не выбирается. Никаких результатов нет.

загнать ее на исполнительное устройство

Никакой суперскаляр ни на какие исполнительные устройства ничего не загоняет.

Суперскаляр занимается сплитоп потока инструкций на отдельные, независимые потоки вычислений. Никакие инструкции никто не выбирает.

Там такой же «влив», который всё расскидывает. Спекулятивное исполнение есть и у эльбруса. Точно так же это работает в суперскаляре, вернее уже после него.

и придержать прочие пока команда не исполнится

Полная чушь. Ничто не работает с коммандами. И ничто их не придерживает.

  • подумаешь фигня какая, в кремнии реализовать, еще чтобы и в реалтайме на частоте ядра шуршало :)

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

нет. там рулит только производительность на ватт.

Нет. Это настолько нелепая чушь. Если тебе неважно сколько производительности - тебя не интересуют ватты. Если тебе нужна производительность - она тебе нужна. А суперскаляр не может её удовлетворить.

А то, что у тебя может быть где-то бюджет ещё и по ваттам - ничего не значит.

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

Нет.

а не на исполнительных блоках.

Познания зашкаливают.

ну и проще оно, да - закинул слово команд по блокам, подождал результата, дальше - следующее слово закинул, самое то для числодробилен, где почти как в анекдоте «чего там думать - множить надо»…

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

Если для таких как ты - тебе его пол жизни изучать, что-бы хотя-бы азы узнать.

берете сэнди бридж. берете какой-нить бенч.

Сразу пердёжь в лужу. Мне не нужно брать никакой бенч, в отличии от балаболов тутошних я конкретно знаю что изменилось.

К тому же, самое смешное то, что каким образом гений будет отличать профит от суперскаляра от профита х86 фронта, кешей, памяти, бека и прочего.

запускаете, смотрите попугаи.

Ещё раз, мне не нужно ничего смотреть. Я и так знаю.

берете какой-нить *лейк. берете тот же бенч. фиксируете частоту на частоте сэнди бриджа. запускаете, смотрите попугаи. сравниваете, посыпаете голову пеплом.

Сраниваю и ты опять перданул в лужу. В целом уже можно фиксировать твою полную несостоятельность, хотя это можно было сделать после каждой потуги.

далее, берете какой-нить gcc 4.4 например. компилите ним приложение бенча (желательно - на С, не С++)

Ога. Не С++, гцц 4.4 - уровень познаний поражает, опять же.

запускаете, смотрите результаты. потом берете gcc 9.x, компилите и запускаете тот же бенч. эдак в 90% случаев разница в производительности будет в пределах погрешности.

А, действительно.

никогда он не пытался заниматься вливом,

Пытался.

там все-таки не идиоты сидят - пилить архитектуру, у которой ABI ломается при любом расширении ядра.

Да ты чё, а пацаны с видяхами, с армами не знали. У нас тут гений завёлся. К тому же, с чего вдруг ему ломаться?

итаники - ни разу не VLIW, хоть и отдаленно похожи.

Влив. К тому же, опять ахренительные познания. Каким образом можно быть походим на влив, если никакого влива не существует? vliw - это класс архитектур с явным параллелизмом. Это основное его свойство. Ничего другого нет. Никакого влива как влива не существует.

minihic112 ()
Ответ на: комментарий от NiTr0

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

Выше я разбирал бенчмарки из книги. И они там были на пятом гцц, даже не на 4. И о чудо, новый гцц родил код всего лишь в 50раз быстрее. Вообще никакой разницы нет. Какие-то копейки.

Подумаешь и предыдущий их бенчмарк работал на старом гцц в разы медленнее. Всего лишь из-за оптимизаций деление стало работать раза в 2-3 быстрее. Да кому это нужно.

Эксперт же нам сообщил - никакой разницы нет. Ну всего то бацал лабы на 4 гцц, С++ ему не нужен. А тут вдруг какой-то 9 гцц, хотя он уже протух.

minihic112 ()
Ответ на: комментарий от SZT

Если есть купленный PC Эльбрус, т.е. то, на чем ты можешь использовать свой бинарник - получай на здоровье. Какой смысл в их патчах, если ты их не собрать не запустить не сможешь, не приобретя оборудование, которое если приобретёшь, то получишь доступ у этим патчам вполне легально.

Под NDA - их собственный компилятор и он НЕ GPL.

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

Если есть купленный PC Эльбрус, т.е. то, на чем ты можешь использовать свой бинарник - получай на здоровье.

Почему никто еще исходники не выложил из числа тех, кто их получить имеет право?

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

Под NDA - их собственный компилятор и он НЕ GPL.

Я не про компилятор спрашивал.

Повторяю. Запрещают ли МЦСТ через какие-то NDA выкладывать исходники от GPL/LGPL-софта, требуют ли они подписаний каких-либо NDA для получения исходников от GPL/LGPL-софта для тех людей, у которых есть бинарники?

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

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

А если ты пользователь, то как здесь написано, пиши запрос - всё дадут.

А про раздачу исходных текстов НЕ клиентам МЦСТ, скорей всего, да - NDA (хотя спрашивай @Aceler, я не в курсе) и это совершенно не противоречит GPL, потому что ПОЛЬЗОВАТЕЛИ (aka клиенты) исходные коды получают и между ПОЛЬЗОВАТЕЛЯМИ ими обмениваются и свободно распространяют между ПОЛЬЗОВАТЕЛЯМИ.

SkyMaverick ★★ ()

Кто осилил документацию? Вот читаю вначале про nop с магическими числами, мол они нужны в «широких командах» иначе будет блокировка и медленно. Так каким образом вычисляются магические числе после nop?

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

А про раздачу исходных текстов НЕ клиентам МЦСТ, скорей всего, да - NDA (хотя спрашивай @Aceler, я не в курсе) и это совершенно не противоречит GPL

Вообще-то противоречит. Если ты легально получил исходники GPL-софта, делать ты с ними можешь что угодно. Кроме смены лицензии при распространении. Но может получившие их просто не хотят раздавать, они в своём праве. :-)

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

Нет. Компиляция в контексте программирования - это перевод программы с исходного языка в целевой.

Тогда транслятор с С в Паскаль тоже компилятор. Исходный язык C, целевой - Паскаль.

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

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

Еще раз. Бинарники я получил по ссылке от МЦСТ-Волга. Могу или не могу я их запустить, есть или нет у меня устройство - дело вообще десятое. Раз теперь выложили описание инструкций, я могу упороться и написать виртуалку, и там их запускать.

Мне не нужно быть каким-то Официальным Обладателем Особой Железки, чтобы иметь право получить исходные коды, имея на руках бинарники. Это понятно?

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