Новий Python 3.13 — Покращена продуктивність та багатопотоковість

watch 7s
views 2

12:32, 10.10.2024

7 жовтня 2024 року вийшла стабільна версія Python 3.13, яка принесла багато значних нововведень, зокрема експериментальний JIT-компілятор, режим роботи без глобального блокування інтерпретатора (GIL) та оновлений інтерактивний інтерпретатор на базі PyPy. Ці вдосконалення покликані підвищити продуктивність та зручність використання мови. Підтримка Python 3.13 триватиме півтора року, після чого ще три з половиною роки будуть випускатися оновлення безпеки.


Однією з ключових новинок є експериментальний JIT-компілятор, який дозволяє суттєво прискорити виконання програм. Для активації JIT у CPython додана опція складання --enable-experimental-jit, яка вимагає встановлення LLVM. Цей компілятор працює на основі архітектури Copy-and-Patch, замінюючи байт-код машинними інструкціями в режимі реального часу.


Також була додана можливість компіляції CPython без GIL. Ця функція, що активується через опцію --without-gil, дозволяє паралельне виконання коду на багатоядерних системах, вирішуючи проблеми із блокуваннями в багатопотокових середовищах. Проте, вимкнення GIL призводить до невеликого зниження продуктивності для однопокових програм, що компенсується паралельним виконанням операцій.


Ще одним важливим покращенням є оновлений інтерактивний інтерпретатор, що запозичує можливості з PyPy. Тепер доступні багаторядкове редагування, кольорові трасування, інтерактивна довідка та інші вдосконалення для зручної роботи з кодом.


У Python 3.13 також покращено роботу з локальними змінними у функціях, додано нову анотацію typing.Type Is, а також впроваджено інші важливі зміни, включаючи покращену версію бібліотеки управління пам'яттю mimalloc.

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

Поділитися

Чи була ця стаття корисною для вас?

Популярні пропозиції VPS

-10%

CPU
CPU
6 Epyc Cores
RAM
RAM
16 GB
Space
Space
150 GB NVMe
Bandwidth
Bandwidth
Unlimited
KVM-NVMe 16384 Linux

60.5

При оплаті за рік

CPU
CPU
6 Epyc Cores
RAM
RAM
8 GB
Space
Space
100 GB NVMe
Bandwidth
Bandwidth
Unlimited
Keitaro KVM 8192
OS
CentOS
Software
Software
Keitaro

При оплаті за місяць

CPU
CPU
4 Epyc Cores
RAM
RAM
4 GB
Space
Space
50 GB NVMe
Bandwidth
Bandwidth
Unlimited
Keitaro KVM 4096
OS
CentOS
Software
Software
Keitaro

При оплаті за місяць

-21.5%

CPU
CPU
2 Xeon Cores
RAM
RAM
4 GB
Space
Space
100 GB SSD
Bandwidth
Bandwidth
300 GB
wKVM-SSD 4096 HK Windows

40

При оплаті за рік

-9.9%

CPU
CPU
4 Xeon Cores
RAM
RAM
4 GB
Space
Space
100 GB HDD
Bandwidth
Bandwidth
300 Gb
KVM-HDD HK 4096 Linux

12.07

При оплаті за рік

-10%

CPU
CPU
4 Xeon Cores
RAM
RAM
2 GB
Space
Space
30 GB SSD
Bandwidth
Bandwidth
Unlimited
KVM-SSD 2048 Linux

8.3

При оплаті за рік

-22.2%

CPU
CPU
4 Xeon Cores
RAM
RAM
4 GB
Space
Space
50 GB SSD
Bandwidth
Bandwidth
300 GB
KVM-SSD 4096 HK Linux

33

При оплаті за рік

-5%

CPU
CPU
3 Xeon Cores
RAM
RAM
1 GB
Space
Space
40 GB HDD
Bandwidth
Bandwidth
Unlimited
wKVM-HDD 1024 Windows

12.1

При оплаті за рік

-7.1%

CPU
CPU
4 Xeon Cores
RAM
RAM
4 GB
Space
Space
100 GB HDD
Bandwidth
Bandwidth
Unlimited
wKVM-HDD 4096 Windows

21

При оплаті за рік

-10%

CPU
CPU
4 Epyc Cores
RAM
RAM
4 GB
Space
Space
50 GB NVMe
Bandwidth
Bandwidth
Unlimited
KVM-NVMe 4096 Linux

25.9

При оплаті за рік

Інші статті на цю тему

cookie

Чи приймаєте ви файли cookie та політику конфіденційності?

Ми використовуємо файли cookie, щоб забезпечити вам найкращий досвід роботи на нашому сайті. Якщо ви продовжуєте користуватися сайтом, не змінюючи налаштувань, вважайте, що ви згодні на отримання всіх файлів cookie на сайті HostZealot.