CPython добавил поддержку RISC-V в качестве платформы уровня Tier 3

от автора

Команда разработчиков Python объявила, что открытая архитектура набора команд RISC-V теперь официально поддерживается CPython на уровне Tier-3. Об этом рассказал Стэн Ульбрих в блоге Python Insider после продолжительной работы сообщества по проверке и стабилизации работы на реальных микросхемах.

Для официального включения в PEP 11 потребовалась масштабная совместная работа. В течение нескольких месяцев участники проводили тесты, исправляли специфичные для архитектуры ошибки и укрепляли сборочную инфраструктуру. Ульбрих отдельно отметил поддержку со стороны RISE — они предоставили несколько машин на RISC-V, которые использовались в качестве buildbot’ов для запуска автоматизированных тестов и отладки специфических архитектурных проблем.

Интеграция в CI/CD и планы на Tier 2

Хотя статус Tier 3 — это важный и серьезный шаг, впереди еще много работы. Например, создается задержка в выявлении багов из-за того, что buildbot’ы обычно запускают тесты только после принятия патчей. Чтобы это исправить, в рамках инициативы RISE RISC-V Runners планируется напрямую встроить оборудование RISC-V в CI/CD для CPython. Это поможет быстрее получать обратную связь и, как следствие, быстрее исправлять дефекты.

В перспективе мейнтейнеры планируют перевести RISC-V на уровень Tier 2 в рамках PEP 11. Основные контрибьюторы также намерены исследовать специфичные для архитектуры оптимизации, которые позволят повысить производительность во время выполнения за счет более полного использования возможностей платформы RISC-V.

Также команда разработчиков обратилась к тем, кто имеет доступ к совместимым платам, с просьбой провести тестирование, чтобы проверить стабильность в различных конфигурациях. Ульбрих отметил: «Нам очень важно, чтобы люди пользовались данной разработкой и давали нам обратную связь. Если у вас есть доступ к оборудованию RISC-V, пожалуйста, попробуйте собрать и запустить CPython, прогнать свои нагрузки и тестовые наборы и сообщите нам, что не работает».

В заключение Ульбрих подчеркнул, что CPython представляет собой лишь один уровень более широкой экосистемы. Расширение возможностей полноценной работы с RISC-V будет зависеть от постоянного вклада сообщества в разработку сторонних пакетов Python, компиляторов, наборов инструментов и инфраструктуры для разработчиков.

30+ бесплатных курсов на ИТ‑темы в Академии Selectel

Для начинающих и опытных специалистов.

Изучить →

Что означают уровни Tier в Python

Вспомним, как влияет уровень Tier на релизы Python:

  • Tier 1 — ошибки в системе непрерывной интеграции блокируют выпуск релизов;

  • Tier 2 — изменения, нарушающие работу любой из этих платформ, должны быть исправлены или отменены в течение 24 часов;

  • Tier 3 — сбои на этих платформах не препятствуют выпуску релиза, однако все равно необходимо иметь надежный buildbot.

Реакция сообщества и перспективы

В обсуждениях на Hacker News и в сообществе Reddit это достижение было воспринято как важный сигнал о зрелости платформы, при этом активно обсуждались практические инженерные последствия присвоения статуса Tier 3. Разработчики отметили: хотя данный статус и означает, что платформа все еще может иногда ловить сбои, не блокируя выпуск основных релизов, официальная поддержка устраняет серьезную историческую проблему интеграции RISC-V в конвейеры CI/CD. Обсуждения также касались аппаратных профилей вроде RV64GC и будущих стандартов, например RVA23. Участники рассматривали, как современные возможности ядра — векторные расширения, битовые операции и инструкции без ветвлений — могут в конечном итоге быть использованы для оптимизации производительности интерпретатора Python.

RISC-V представляет собой архитектуру с открытым стандартом набора команд, разработанную в качестве альтернативы закрытым аналогам, таким как x86 и ARM. В отличие от x86, которая является проприетарной и строго охраняется традиционными коммерческими структурами, или ARM, которая работает в условиях ограничительных лицензионных сборов и жесткого корпоративного контроля, RISC-V разработана как открытый стандарт, который может реализовать любой желающий.

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

ссылка на оригинал статьи https://habr.com/ru/articles/1081136/