Рубріки: Новини

Python 3.14 отримає новий інтерпретатор, який підвищує продуктивність до 30% без змін в існуючому коді

Дмитро Сімагін

Новий інтерпретатор, який незабаром з’явиться в релізі Python 3.14, запускатиме програми на 30% швидше, не потребуючи змін в існуючому коді. Бета-версія Python 3.14 має вийти в травні 2025 року, пише InfoWorld. Проміжні альфа-релізи також повинні включати новий інтерпретатор.

Журнал змін CPython 3.14 описує заплановану функцію як «новий тип інтерпретатора на основі хвостових рекурсій» (Tail call). Цей опис може ввести в оману тих, хто не стежить уважно за внутрішньою розробкою Python. «Хвостові рекурсії» не означають, що CPython або мова Python підтримуватимуть їхню оптимізацію. Оновлення стосується лише оптимізації, яку компілятор C виконує над кодом CPython, що пришвидшує спосіб, у який інтерпретатор надсилає свої інструкції байт-коду.

Жодних змін до існуючого коду Python вносити буде не потрібно, модулі розширення C для CPython також не потрібно перекомпілювати, оскільки немає змін до API або ABI CPython. Також новий інтерпретатор не додає значних витрат на обслуговування CPython, оскільки він реалізується в основному шляхом перепрофілювання існуючого коду.

Для тих, хто використовує попередньо зібрані двійкові файли CPython, нову збірку інтерпретатора слід включити як частину процесу оновлення до Python 3.14. Проте, якщо ви створюєте CPython із вихідного коду, використання цієї функції вимагатиме спеціального прапора компіляції для процесу збирання CPython ( –with-tail-call-interp).

Найголовніше те, що новий інтерпретатор вимагає використання компілятора C, який підтримує оптимізацію хвостової рекурсії. Не всі компілятори C забезпечують таку підтримку. Поки що процес компіляції підтримується на MSVC і Clang 19+ (на архітектурах x86-64 і AArch64). Очікується, що його також буде додано до GCC.

Python працює повільніше, ніж машинно скомпільовані мови, такі як Rust або C/C++, значною мірою тому, що поведінка цієї мови ускладнює оптимізацію швидкості. Але це не зупиняє масових зусиль удосконалити Python без шкоди для зворотної сумісності. Більшість цих зусиль зосереджено на оптимізації інтерпретатора CPython.

Останні статті

Google оновила генератор відео Veo 3 та знизила тарифи

Google представила три великі оновлення свого генератора відео Veo 3: підтримку вертикального формату (співвідношення сторін…

10.09.2025

Microsoft запроваджує нові правила роботи в офісі

Microsoft вимагатиме від більшості своїх співробітників працювати в офісі щонайменше три дні на тиждень. Нові…

10.09.2025

Новачки все менше шукають роботу у фронтенді

Незважаючи на те, що фронтенд залишається найпоширенішою категорією серед кандидатів, які шукають роботу в українському…

10.09.2025

Microsoft випустила інсайдерську збірку Visual Studio 2026

Microsoft завершує роботу над серйозним оновленням середовища розробки Visual Studio, головною метою якого є впровадження…

10.09.2025

Claude тепер може створювати та редагувати файли

Чат-бот на базі моделей Claude від компанії Anthropic тепер може створювати та редагувати електронні таблиці…

10.09.2025

Користувачі Windows зможуть працювати з файлами без необхідності їх відкривати

Microsoft тестує нові функції Провідника на базі штучного інтелекту, які дозволяють користувачам Windows 11 працювати…

09.09.2025