> Короче, как всегда: лучший ускоритель программы -- это мозг.На эльбрусах может быть удобнее оптимизировать свои циклы по той причине, что непосредственно видно, во что они превращаются -- см. тж. экземпляр Compiler Explorer у Алибека на http://ce.mentality.rip и ссылки с http://altlinux.org/эльбрус/оптимизация
> Боль в том, что масса алгоритмов VLIW-оптимизации поддаётся плохо.
Это правда, но в последние год-полтора по этой теме отдельные масловы попытались раздуть из мухи изрядного слона.
На практике же я на своём 801-РС, с которого вот пишу, наблюдаю практически приемлемую скорость работы (причём непонятно, что быстрей -- эта машинка или i5-3317U со всеми матюгейшенами); а уж на двухгигагерцовом 16С со снятием штрафов за невыровненный доступ -- так и вообще хорошо.
Что до -mtune/-march -- первое даёт код, который попросту не запустится на другом процессоре, а второе -- код, который запустится на данной версии системы команд и выше (альтовая спасательная флэшка для v3 работает на всём вплоть до v6, например); мы особо не заморачивались изменением разницы скорости работы "неродного" кода, но в двух случаях -- "v3/v4 на v4" и "v4/v5 на v5" -- конкретно 7za b дал более-менее стабильный 1% разницы; т.е. для неоптимизированного под целевую версию кода разница есть, но незначительная (вовсе не в разы, как можно было бы предположить, начитавшись набросов с недосказанностями).
См. тж.:
http://altlinux.org/эльбрус/архитектура
http://altlinux.org/эльбрус/тесты
PS: если кому интересно пощупать самостоятельно -- добро пожаловать в http://t.me/e2k_chat; обращайтесь к @makise_homura на предмет доступа к его стендовым 804 (4x8С) и 901 (8СВ) машинкам. Надеюсь, такая практика расширится и дальше.