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

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.

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

Незважаючи на протести, Microsoft запустить функцію, яка відстежує місцезнаходження співробітників

Microsoft планує в березні додати функцію оповіщення про місцезнаходження співробітників для корпоративних клієнтів Teams. Раніше…

26.01.2026

У Сумах програміст судився з роботодавцем через повернення до офісу

Сумський апеляційний суд оголосив рішення у довготривалій справі, в якій місцевий програміст оскаржував наказ роботодавця…

26.01.2026

Кількість нових програм в App Store за рік зросла на 60%

За даними Sensor Tower та Wells Fargo Securities, у грудні 2025 року кількість нових iOS-додатків…

26.01.2026

Функція тимчасового чату ChatGPT стає персоналізованою

OpenAI тестує оновлення функції тимчасового чату в ChatGPT. Вона дозволить користувачам зберегти персоналізацію в тимчасовому…

26.01.2026

Головні технічні тренди блокчейну та криптовалют у 2026 році

На початку 2026 року одна з лідерок криптоіндустрії, CEO Trust Wallet Еовін Чен, відповідаючи на…

26.01.2026

Бельгійський розробник створив мову програмування, не написавши жодного рядка коду

Бернар Ламбо, розробник програмного забезпечення з Бельгії, створив мову програмування під назвою Elo, використовуючи інструмент…

26.01.2026