PYTHONL Telegram 5148
Наглядное сравнение скорости нового Python 3.14 с предыдущей версией

Теперь Python может использовать все ядра процессора так же эффективно, как C++ или Go - без сложных обходных путей и накладных расходов.

Многопоточность стала быстрее мультипроцессинга - впервые в истории Python.

Главное - новая сборка позволяет работать без GIL (Global Interpreter Lock), что меняет всё.

Как вы наверное знаете, GIL - это глобальная блокировка интерпретатора, которая позволяет в каждый момент времени исполнять только один поток байткода Python, даже если у тебя много ядер.

Раньше поэтому многопоточность в Python фактически не работала.

🔄 Как обходили GIL
До сих пор стандартный способ распараллеливания 0 мультипроцессинг.
Каждый процесс - свой экземпляр интерпретатора со своим GIL.

Минусы такого подхода: каждая копия имеет отдельную память, данные нужно сериализовать при передаче — большие накладные расходы.

🚀 Что меняется в 3.14
В новой версии можно отключить GIL, и потоки теперь работают в общем адресном пространстве.
Общий доступ к памяти + никакой сериализации → значительное ускорение:
многопоточность теперь оказывает на ~33 % быстрее, чем мультипроцессинг.

📈 Эксперименты из репозитория koenvo/python-experiments/free-threading
- Продемонстрировано, что без GIL потоки действительно ускоряют работу задач с интенсивной синхронизацией и доступом к общей памяти.
- Показаны сравнения, где многопоточные версии (с отключённым GIL) часто превосходят мультипроцессные аналоги по времени выполнения.
- Тесты охватывают разные сценарии: CPU-нагрузки, обмен данными между потоками, циклы с синхронизацией.
- Репозиторий служит “proof of concept” — демонстрация, что free-threading действительно работает и приносит выгоду.

💡 Почему это важно
- Теперь реальная многопоточность в Python становится возможной и эффективной.
- Это особенно актуально для библиотек и фреймворков: ожидается, что PyTorch, NumPy и другие скоро получат поддержку free-threading.
- Уменьшаются накладные расходы на межпроцессное взаимодействие, улучшается масштабируемость на многопроцессорных системах.

Вот реальные примеры:
https://github.com/koenvo/python-experiments/tree/main/free-threading

@pythonl
👍2712🔥7



tgoop.com/pythonl/5148
Create:
Last Update:

Наглядное сравнение скорости нового Python 3.14 с предыдущей версией

Теперь Python может использовать все ядра процессора так же эффективно, как C++ или Go - без сложных обходных путей и накладных расходов.

Многопоточность стала быстрее мультипроцессинга - впервые в истории Python.

Главное - новая сборка позволяет работать без GIL (Global Interpreter Lock), что меняет всё.

Как вы наверное знаете, GIL - это глобальная блокировка интерпретатора, которая позволяет в каждый момент времени исполнять только один поток байткода Python, даже если у тебя много ядер.

Раньше поэтому многопоточность в Python фактически не работала.

🔄 Как обходили GIL
До сих пор стандартный способ распараллеливания 0 мультипроцессинг.
Каждый процесс - свой экземпляр интерпретатора со своим GIL.

Минусы такого подхода: каждая копия имеет отдельную память, данные нужно сериализовать при передаче — большие накладные расходы.

🚀 Что меняется в 3.14
В новой версии можно отключить GIL, и потоки теперь работают в общем адресном пространстве.
Общий доступ к памяти + никакой сериализации → значительное ускорение:
многопоточность теперь оказывает на ~33 % быстрее, чем мультипроцессинг.

📈 Эксперименты из репозитория koenvo/python-experiments/free-threading
- Продемонстрировано, что без GIL потоки действительно ускоряют работу задач с интенсивной синхронизацией и доступом к общей памяти.
- Показаны сравнения, где многопоточные версии (с отключённым GIL) часто превосходят мультипроцессные аналоги по времени выполнения.
- Тесты охватывают разные сценарии: CPU-нагрузки, обмен данными между потоками, циклы с синхронизацией.
- Репозиторий служит “proof of concept” — демонстрация, что free-threading действительно работает и приносит выгоду.

💡 Почему это важно
- Теперь реальная многопоточность в Python становится возможной и эффективной.
- Это особенно актуально для библиотек и фреймворков: ожидается, что PyTorch, NumPy и другие скоро получат поддержку free-threading.
- Уменьшаются накладные расходы на межпроцессное взаимодействие, улучшается масштабируемость на многопроцессорных системах.

Вот реальные примеры:
https://github.com/koenvo/python-experiments/tree/main/free-threading

@pythonl

BY Python/ django









Share with your friend now:
tgoop.com/pythonl/5148

View MORE
Open in Telegram


Telegram News

Date: |

In handing down the sentence yesterday, deputy judge Peter Hui Shiu-keung of the district court said that even if Ng did not post the messages, he cannot shirk responsibility as the owner and administrator of such a big group for allowing these messages that incite illegal behaviors to exist. Matt Hussey, editorial director of NEAR Protocol (and former editor-in-chief of Decrypt) responded to the news of the Telegram group with “#meIRL.” As of Thursday, the SUCK Channel had 34,146 subscribers, with only one message dated August 28, 2020. It was an announcement stating that police had removed all posts on the channel because its content “contravenes the laws of Hong Kong.” Ng was convicted in April for conspiracy to incite a riot, public nuisance, arson, criminal damage, manufacturing of explosives, administering poison and wounding with intent to do grievous bodily harm between October 2019 and June 2020. As the broader market downturn continues, yelling online has become the crypto trader’s latest coping mechanism after the rise of Goblintown Ethereum NFTs at the end of May and beginning of June, where holders made incoherent groaning sounds and role-played as urine-loving goblin creatures in late-night Twitter Spaces.
from us


Telegram Python/ django
FROM American