Уже второй год мы проводим бесплатную Зимнюю школу по программированию для RISC-V. В этом году она стала масштабнее, ведь и интерес к открытой процессорной архитектуре значительно возрос. Онлайн-лекторий, доступный каждому, продлится до конца января: вы сможете выбрать интересующий вас доклад и послушать его в «прямом эфире» или посмотреть в записи. Анализ производительности, примеры оптимизации программ, особенности разработки под GPU — актуальными знаниями поделятся эксперты из YADRO и преподаватели ведущих технических вузов России и Беларуси.
А самые замотивированные слушатели смогут принять участие в проектной работе и получить кейс в портфолио. О лектории и проектах — читайте под катом.
Открытый лекторий — с 13 по 30 января
Онлайн-формат, доступный всем желающим. Преподаватели технических вузов России и Беларуси, а также эксперты YADRO проведут серию лекций о программировании под архитектуру RISC‑V. Первые лекции про тренды в RISC-V и генератор llvm-snippy уже прошли, но они будут доступны в записи.
Чтобы присоединиться к новым лекциям, нужно зарегистрироваться на сайте. И вы получите ссылку на трансляцию.
Расписание лектория Зимней школы 2025:
20 января. Постановка экспериментов при анализе производительности: что и как измерять, как анализировать и представлять результаты
21 января. Портирование приложения под RISC-V в прямом эфире
22 января. Примеры оптимизации программ для процессоров архитектуры RISC-V
23 января. Запуск и оптимизация C# приложений на RISC-V
27 января. Особенности разработки под графические ускорители на примере OpenCL: от архитектуры вычислителя до особенностей оптимизации
28 января. Построение платформы безопасности перспективных вычислительных систем на архитектуре RISC-V для современных ОС
29 января. Загрузка RISC-V Linux от BootROM до Shell
30 января. Виртуальная память RISC-V
Проектная работа — с 3 по 8 февраля
Дисклеймер: Принять участие в проектной работе могут только студенты очной формы обучения любого вуза.
По завершении лекционного курса вы сможете пройти тестирование, чтобы поучаствовать в реальном проекте. Для выбора доступно 19 тем проектов и четыре вуза — в Нижним Новгороде, Санкт-Петерюурге, Минске и Новосибирске. С темами проектов и вузами можно ознакомиться по ссылке.
Условия участия:
Очное присутствие в одном из городов проведения.
Участник может выбрать лишь один проект для работы.
Количество мест ограничено.
Участники поделятся на группы и будут работать над задачами под руководством преподавателей вузов и экспертов YADRO. В рамках проекта каждый участник сможет приобрести практический опыт разработки и оптимизации программного обеспечения для открытой архитектуры RISC-V.
Итогом работы станет завершенный проект, который украсит любое портфолио. На всех этапах реализации проекта предусмотрена поддержка со стороны высококвалифицированных преподавателей ведущих технических вузов.
Ключевые даты отбора:
17 января — отправка тестового задания.
21 января — последний день подачи решений.
24 января — результаты отбора придут на вашу почту.
Чтобы зарегистрироваться, перейдите на сайт школы и заполните форму регистрации для участия в проектной работе.
Полезные материалы
Чтобы уверенно подойти к проектной части, мы подготовили материалы, которые помогут вам освоить основы и лучше разобраться в главном:
Open Standard for Parallel Programming of Heterogeneous Systems
Как продвигается разработка стандартных матричных расширений RISC-V
Математика матричных расширений: как происходит умножение матриц на примере T-Head Matrix Extension
Вычисления на RISC-V: исследуем производительность OpenCL на CPU и совместимых GPU
Quake 2 на нашем RISC-V, или как мы поднимали старый Radeon на FPGA
unreal_undead2
Выглядить серьёзно, судя по этому там работы поле непаханое:
What's currently not in our plans for near future:
full jit optimizations with all optimization passes (i.e. disabled MinOpt, tiered compilation, etc.)
optimizations of codegen itself
crossgen2 support
SIMD and intrinsics support
GC (not sure about this yet, need to check current status without
DOTNET_GCgen0size=99999999
and with/withoutFEATURE_CONSERVATIVE_GC
)EH, stackwalking, and interop portions (also not sure, need to check current status)
stubs optimizations, GC optimizations, etc.