CPython официально добавил поддержку RISC-V (tier 3)

CPython, эталонная (референсная) реализация Python, официально присвоил архитектуре RISC-V третий уровень поддержки (tier 3) и закрепил это в PEP 11, документе, который описывает, какие платформы поддерживает CPython. RISC-V, открытая архитектура набора команд (ISA): в отличие от проприетарных x86 и ARM, её может свободно реализовать кто угодно. За последние годы её экосистема заметно выросла, и, по прогнозам, к 2032 году вырастет ещё в четыре раза, поэтому для команды CPython стало важно, чтобы Python на такой платформе работал надёжно.
Статус tier 3 стал возможен благодаря месяцам работы сообщества: люди тестировали CPython на реальном RISC-V-оборудовании, исправляли архитектурно-специфичные проблемы, улучшали поддержку сборки, сообщали об ошибках и рецензировали патчи. Отдельную роль сыграл проект RISE, он предоставил CPython несколько RISC-V-машин, на основе которых появились серверы для автоматической сборки и тестирования и возможность отлаживать проблемы, специфичные для архитектуры. Автор публикации (имя в тексте не названо; ник отправителя на Hacker News к автору отношения не имеет) отдельно поблагодарил Ludovic Henry из проекта RISE, а также Furkan Onder и Emma Smith и многих других участников сообщества. Ещё он поблагодарил агентство Sovereign Tech Agency: его стипендиальная программа лично поддержала работу автора над этой задачей.
Дальше в планах, завести RISC-V прямо в систему непрерывной интеграции (CI) CPython; это снова делается при поддержке RISE, в рамках их инициативы RISE RISC-V Runners. Такая интеграция должна дать разработчикам более быструю обратную связь, чем нынешние серверы автоматической сборки и тестирования, которые обычно запускаются уже после того, как патч слит, а значит, проблемы, специфичные для RISC-V, можно будет ловить раньше. В долгосрочной перспективе цель, поднять RISC-V с третьего уровня поддержки до второго (tier 2). Также рассматриваются архитектурно-специфичные оптимизации, которые позволили бы лучше использовать возможности RISC-V и ускорить CPython именно на этой платформе.
Автор прямо просит всех, у кого есть доступ к RISC-V-оборудованию, собрать и запустить на нём CPython, прогнать свои рабочие нагрузки и тестовые наборы и сообщить, что именно ломается: тестирование в разных RISC-V-окружениях должно улучшить поддержку для всех. При этом CPython, лишь часть экосистемы Python: чтобы RISC-V стал по-настоящему хорошо поддерживаемой платформой для Python в целом, дальнейшая работа сообщества нужна ещё и над пакетами, компиляторами, инструментами и инфраструктурой вокруг языка.
Ключевые факты
- CPython официально присвоил архитектуре RISC-V третий уровень поддержки (tier 3), закреплённый в PEP 11, итог месяцев работы сообщества: тестирования на реальном оборудовании, исправления архитектурно-специфичных проблем, улучшения сборки, сообщений об ошибках и рецензирования патчей.
- RISC-V, открытая архитектура набора команд (ISA): в отличие от проприетарных x86 и ARM, её может реализовать кто угодно; по прогнозам, к 2032 году её экосистема вырастет в четыре раза.
- Проект RISE предоставил CPython несколько RISC-V-машин, на их основе появились серверы для автоматической сборки и тестирования и возможность отлаживать архитектурные проблемы; отдельно поблагодарены Ludovic Henry из RISE, Furkan Onder и Emma Smith.
- Личную работу автора публикации над этой задачей поддержала стипендиальная программа агентства Sovereign Tech Agency.
- Дальше в планах, завести RISC-V прямо в систему непрерывной интеграции (CI) CPython (инициатива RISE RISC-V Runners) для более быстрой обратной связи, чем сейчас дают серверы автоматической сборки и тестирования, и в долгосрочной перспективе поднять RISC-V с tier 3 до tier 2.
Почему это важно
CPython, основная (референсная) реализация Python, официально присвоил архитектуре RISC-V третий уровень поддержки (tier 3) и закрепил это в PEP 11, документе, который описывает поддержку платформ в CPython. К официальному статусу пришли только через месяцы совместной работы, тестирование на реальном железе, исправление архитектурных проблем, улучшение сборки, сообщения об ошибках и рецензирование патчей. Это важно, потому что RISC-V, открытая архитектура набора команд (ISA), которую, в отличие от проприетарных x86 и ARM, может свободно реализовать кто угодно, а её экосистема, по прогнозам, вырастет в четыре раза к 2032 году. Официальная поддержка самого массового языка программирования снижает барьер для входа на эту растущую открытую платформу.
Кому это важно
В первую очередь, всем, у кого есть доступ к RISC-V-оборудованию: автор публикации прямо просит таких людей собрать и запустить на нём CPython и сообщить, что ломается. Это важно для сообщества CPython и его инфраструктурных партнёров, в тексте отдельно названы проект RISE, предоставивший RISC-V-машины для тестирования, и агентство Sovereign Tech Agency, чья стипендиальная программа поддержала личную работу автора над этой задачей. Наконец, это касается всех, кто пишет или разворачивает Python-код на архитектурах за пределами привычных x86 и ARM, теперь у них официально признанная платформа поддержки.
Как это применить
Автор прямо приглашает всех, у кого есть RISC-V-оборудование, собрать и запустить на нём CPython, прогнать через него свои рабочие нагрузки и тестовые наборы и сообщить, что именно не работает: тестирование в разных RISC-V-окружениях, по его словам, поможет улучшить поддержку для всех. Дальше команда CPython планирует завести RISC-V прямо в систему непрерывной интеграции (CI) проекта, снова при поддержке RISE, в рамках инициативы RISE RISC-V Runners, чтобы получать обратную связь быстрее, чем от нынешних серверов автоматической сборки и тестирования, которые обычно запускаются уже после того, как патч слит. Долгосрочная цель, поднять RISC-V с третьего уровня поддержки до второго (tier 2). Также рассматриваются архитектурно-специфичные оптимизации, которые бы лучше использовали возможности RISC-V и ускорили CPython именно на этой платформе. Важная оговорка: в источнике нет ни номера версии CPython, с которой заявлена поддержка tier 3, ни точной даты, ни списка конкретных протестированных вариантов RISC-V-железа, перед тем как полагаться на эту поддержку в проде, стоит свериться с актуальными релиз-нотами CPython и текстом PEP 11.
Можно ли доверять
Материал опубликован в официальном блоге Python (blog.python.org) от первого лица, вероятно, от разработчика, который вёл эту работу; в самом тексте имя автора не названо, а ник отправителя на Hacker News («lumpa») к автору отношения не имеет и не может считаться подписью. Утверждения подкреплены проверяемыми деталями: конкретный документ (PEP 11), названные организации и люди, проект RISE, Ludovic Henry, Furkan Onder, Emma Smith, агентство Sovereign Tech Agency. Это первоисточник, а не пересказ третьих лиц, что для новости такого рода, сильный сигнал достоверности. Обсуждение на Hacker News собрало 78 баллов и 13 комментариев. При этом в тексте нет ни номера версии CPython, ни точной календарной даты присвоения статуса tier 3, ни списка конкретных протестированных RISC-V-устройств, это можно уточнить только по официальным релиз-заметкам CPython и самому PEP 11.
Риски и подводные камни
Статус tier 3, только начальный официальный уровень поддержки; в тексте нет ни срока, к которому RISC-V может дорасти до tier 2, ни точной календарной даты, когда именно присвоен нынешний статус, ни номера версии CPython, с которой это заработает, это стоит уточнять по официальным источникам, а не считать зафиксированным здесь фактом. Автор отдельно подчёркивает, что CPython, только часть экосистемы Python: чтобы RISC-V стал по-настоящему хорошо поддерживаемой платформой для языка в целом, отдельная работа сообщества нужна ещё и над пакетами, компиляторами, инструментами и инфраструктурой вокруг него, то есть один лишь статус tier 3 в CPython не означает, что весь остальной стек уже одинаково хорошо готов к RISC-V. Ожидания по росту экосистемы RISC-V («в четыре раза к 2032 году»), прогноз, а не гарантированный результат.