7.09.2025 состоялся релизPithon 3.14!
На фоне хайпа про NoGIL всё позабыли про другие фичи. Особенно про Multiple Interpreters, который обещает изоляцию процессов но с эффективностью потоков! На сколько действительно это будет эффективно мы узнаем позже, потому что сейчас это лишь первый релиз с ограничениями и недоработками.
Но что там про NoGIL? Теперь этот режим не экспериментальный, а официально поддерживаемый, но опциональный.
Чтобы запустить без GIL нужна специальная сборка. И перед стартом нужно объявить переменную PYTHON_GIL=0
Для вас я собрал готовый репозиторий где достаточно запустить скрпит, который всё сделает:
▫️ соберет релизный Python 3.14 в новый Docker-образ
▫️ запустит тесты в контейнере (GIL, NoGIL, MultiInterpreter)
▫️ распечатает результаты
Тест очень простой, усложняйте сами)
Вот какие результаты у меня:
=== Running ThreadPoolExecutor GIL ON
TOTAL TIME: 45.48 seconds
=== Running ThreadPoolExecutor GIL OFF
TOTAL TIME: 6.14 seconds
=== Running basic Thread GIL ON
TOTAL TIME: 45.54 seconds
=== Running basic Thread GIL OFF
TOTAL TIME: 4.74 seconds
=== Running with Multi Interpreter
TOTAL TIME: 18.30 seconds
Если сравнивать GIL и NoGIL, то на мои 32 ядра прирост х7-x10 (почему не х32? 🤷). При этом нам обещают что скорости будут расти с новыми релизами.
Режим без GIL похож (визуально) на async, тоже параллельно, тоже не по порядку. Но это не IO! и от того некоторый диссонанс в голове 😵💫, нас учили не так!
Интересно, что чистый Thread работает быстрей чем ThreadPoolExecutor без GIL.
Ну и где-то плачет один адепт мульти-интерпретаторов😭 Теперь нужно искать где они могут пригодиться с такой-то скоростью. Скорее всего своя область применения найдется.
Отдельно я затестил память и вот что вышло на 32 потока:
ThreadPoolExecutor GIL ON
305.228 MB
ThreadPoolExecutor GIL OFF
500.176 MB
basic Thread GIL ON
90.668 MB
basic Thread GIL OFF
472.444 MB
with Multi Interpreter
1267.788 MB
Пока не знаю как к этому относиться)
В целом - радует направление развития!
#release
#Italia
La Presidente del Consiglio, Giorgia #Meloni (#Fd|ECR) in un’informativa urgente sull’azione del governo:
“Non sono solita ingerire nel lavoro delle commissioni parlamentari d’inchiesta, ma mi permetto di chiedere alla commissione parlamentare antimafia di occuparsi dei tentativi di infiltrazione della criminalità organizzata nei partiti politici, Fratelli d’Italia compreso. Mentre alcuni usano il tema per fare propaganda contro gli avversari, a me interessa costruire gli anticorpi a un fenomeno che ci riguarda tutti. Non accetto che i miei sacrifici possano essere usati per gli interessi di quelli che combatto dal 19 luglio del 1992, e non accetto lezioni su questo tema”.
@OsservatorioItaliano
#Romania🇷🇴
#Presidenziali
Nicușor #Dan, 55 anni, è originario di Făgăraș (Transilvania). È Sindaco di Bucarest dal 2020. In precedenza è stato anche deputato per la Capitale dal 2016 al 2020. Fu tra i fondatori del partito Unione Salvate la Romania (#USR|RE), di cui è stato anche Presidente tra il 2016 e il 2017; ha fondato il partito come continuazione del progetto "Unione Salvate Bucarest". È uscito dal partito il 1° giugno 2017 ed è quindi rimasto un indipendente. Dan è sostenuto dall'USR, da Forza della Destra (#FD|PPE), dal Partito #DREPT|Centro anticorruzione, dal Partito del Movimento Popolare (#PMP|PPE), da Rinnoviamo il Progetto Europeo della Romania (#REPER|RE) e da altri partiti minori.
@TuttoElezioni