Новий 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

50.49

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

-10%

CPU
CPU
10 Epyc Cores
RAM
RAM
64 GB
Space
Space
400 GB NVMe
Bandwidth
Bandwidth
Unlimited
KVM-NVMe 65536 Linux

135.49

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

-10%

CPU
CPU
2 Epyc Cores
RAM
RAM
1 GB
Space
Space
10 GB NVMe
Bandwidth
Bandwidth
Unlimited
KVM-NVMe 1024 Linux

7.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 Xeon Cores
RAM
RAM
2 GB
Space
Space
75 GB SSD
Bandwidth
Bandwidth
Unlimited
wKVM-SSD 2048 Windows

10.23

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

-10%

CPU
CPU
6 Xeon Cores
RAM
RAM
8 GB
Space
Space
100 GB SSD
Bandwidth
Bandwidth
Unlimited
KVM-SSD 8192 Linux

25.85

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

-10%

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

15.95

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

-8.9%

CPU
CPU
6 Xeon Cores
RAM
RAM
16 GB
Space
Space
400 GB HDD
Bandwidth
Bandwidth
Unlimited
wKVM-HDD 16384 Windows

56

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

-10%

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

30.3

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

-21.4%

CPU
CPU
6 Xeon Cores
RAM
RAM
8 GB
Space
Space
100 GB SSD
Bandwidth
Bandwidth
500 GB
wKVM-SSD 8192 HK Windows

67

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

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

cookie

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

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