Комментарии 9
Красава! Так держать!
Спасибо, интересно было наблюдать и хоть мизинчиком попытаться посодействовать :)
Ребята и девчонки молодцы, конечно. И коденроксы. И наладчики. И ты. Так держать!
Не особо понял зачем тут нужен был эльбрус тем более удаленный. Задача мало того что не предполагает специальных реализаций или оптимизаций под e2k, так еще и условия не под сервак, а под какую-то встраиваемую технику типа малинки, которая (к примеру) управляет роботом с колесиками и должна прокладывать путь в лабиринте.
Но тамада решил что на эльбрусе через ssh это будет веселее.
Вот так это выглядит со стороны.
Почему же не предполагает реализаций и оптимизаций кода под e2k? Ещё как предполагает. В этом весь смысл. И чем лучше оптимизации под Эльбрус в решениях участников, тем больше их преимущество и отрыв от других участников.
Лабиринт и визуальная составляющая нужны для зрелищности. Они очень хорошо подходят для дуэлей 1 на 1. Но нет разницы, под какие задачи оптимизировать вычисления на Эльбрусе. Одна из важнейших задач соревнования состоит в том, чтобы познакомить участников с «Эльбрусами» как с платформой, готовой для работы и разработки.
А если не SSH, то как ещё дать участникам прямой и удобный доступ для запуска, профилирования и отладки решений (кода) если участники разбросаны по всей России?
Не очень понимаю как можно "оптимизировать под Эльбрус" при первом знакомстве.
Вы сами пробовали что-то оптимизировать под него и читали ли книгу по архитектуре?
Конечно, иначе я бы не занимался проведением соревнования по программированию под e2k. И поэтому за 2 месяца до старта отборочного этапа всем участникам предоставляется вся необходимая документация под целевой процессор (Эльбрус‑8СВ), в том числе по оптимизации.
Более того, в августе перед стартом я специально подготовил большой материал на Хабре (в первую очередь для участников) «Оптимизируем код решения СЛАУ методом Гаусса под процессор Эльбрус‑8СВ». Именно темой оптимизации кода под e2k как основной, с детальным разбором и примерами.
Обо всём этом я упоминял в текущем материале.
Переписывание плюсового кода и функций на си это не оптимизации.
В той статье на некоторых шагах код оптимизируется с использованием C‑подобного стиля/подхода, но это ведь не смена языка.
Суть многих оптимизаций там состоит в отказе от абстракций и конструкций, которые компилятору LCC сложно анализировать, в пользу более простых и предсказуемых для него.
То есть это в первую очередь вопрос предсказуемости кода для компилятора, а не формального языка программирования. Да и главное это пример с разбором, чтобы участники соревнвоания (студенты) поняли в чём суть.
Можно ли считать это простым переписыванием кода из C++ в C вопрос, по-моему, дискуссионно-философский.
Бывает... я тоже во многом (собственно, почти во всём) не понимаю -- ну так и помалкиваю себе, ну или если очень хочется понять -- читаю умные книжки по теме, слушаю людей и сопоставляю с наблюдаемым. :)
А оптимизировать под e2k очень даже есть как. Более того, есть подозрение, что именно при явном параллелизме -- когда видишь непосредственно группировку команд в ассемблере -- может получиться применить наработанные оптимизации и для более удачной конвейеризации циклов с распутыванием зависимостей по данным для OoO-архитектур с "чёрным ящиком" в виде декодера.

Как я провёл второе соревнование по программированию на Эльбрусах (e2k) «Кубок СЭРПАС 2026»