В CPython появится возможность отключения глобальной блокировки интерпретатора
Автор
Сообщение
news_bot ®
Стаж: 6 лет 9 месяцев
Сообщений: 27286
Опубликовано предложение по расширению языка Python - PEP-0703, в котором рассматривается добавление режима сборки CPython без глобальной блокировки интерпретатора (GIL, Global Interpreter Lock). Предложение сводится к оставлению по умолчанию GIL, но добавлению для его отключения сборочной опции "--without-gil". Спецификация пока находится на стадии черновика, подлежащего обсуждению. Новый режим позволит решить проблему с распараллеливанием операций на многоядерных системах, вызванную тем, что глобальная блокировка не допускает параллельное обращение к разделяемым объектам из разных потоков.
По умолчанию отключение GIL нецелесообразно в связи с накладными расходами, связанными с изменениями в сборщике мусора, системе управления памятью и примитивах для организации блокировок. Например, из-за использования подсчёта ссылок для изоляции потоков наблюдается заметное снижение производительности однопоточных сценариев (в тестовом наборе pyperformance на 10%). При этом отключение GIL может потребоваться в научных вычислениях, для которых отсутствие распараллеливания является более серьёзной проблемой, чем линейная скорость выполнения кода. Другой проблемой является несовместимость на уровне ABI сборок CPython с GIL и без него.
===========
Источник:
OpenNet.RU
===========
Похожие новости
- Главная ссылка к новости (https://discuss.python.org/t/p...)
- OpenNews: Представлен Pyston-lite, JIT-компилятор для штатного Python
- OpenNews: Стратегия параллельного поддержания веток Python 2 и Python 3 оказалась ошибочной
- OpenNews: Выпуск языка программирования Python 3.11
- OpenNews: Проект по интеграции поддержки многопоточности в Python и релиз PyPy 1.3
- OpenNews: Представлен pypy-stm, интерпретатор Python с поддержкой распараллеливания на многоядерных системах
Похожие новости:
- Выпуск Nuitka 1.3, компилятора для языка Python
- Выпуск Nuitka 1.2, компилятора для языка Python
- Выпуск Brython 3.11, реализации языка Python для web-браузеров
- Выпуск языка программирования Python 3.11
- Выпуск Nuitka 1.1, компилятора для языка Python
- В JIT-компиляторе Pyston-lite реализована поддержка Python 3.10
- Arch Linux прекратил поставку Python 2
- DeepMind открыл код S6, библиотеки с реализацией JIT-компилятора для CPython
- Выпуск Nuitka 1.0, компилятора для языка Python
- Packj - инструментарий для выявления вредоносных библиотек на языках Python и JavaScript
Теги для поиска: #_python, #_gil
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 02:49
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 6 лет 9 месяцев |
|
Опубликовано предложение по расширению языка Python - PEP-0703, в котором рассматривается добавление режима сборки CPython без глобальной блокировки интерпретатора (GIL, Global Interpreter Lock). Предложение сводится к оставлению по умолчанию GIL, но добавлению для его отключения сборочной опции "--without-gil". Спецификация пока находится на стадии черновика, подлежащего обсуждению. Новый режим позволит решить проблему с распараллеливанием операций на многоядерных системах, вызванную тем, что глобальная блокировка не допускает параллельное обращение к разделяемым объектам из разных потоков. По умолчанию отключение GIL нецелесообразно в связи с накладными расходами, связанными с изменениями в сборщике мусора, системе управления памятью и примитивах для организации блокировок. Например, из-за использования подсчёта ссылок для изоляции потоков наблюдается заметное снижение производительности однопоточных сценариев (в тестовом наборе pyperformance на 10%). При этом отключение GIL может потребоваться в научных вычислениях, для которых отсутствие распараллеливания является более серьёзной проблемой, чем линейная скорость выполнения кода. Другой проблемой является несовместимость на уровне ABI сборок CPython с GIL и без него. =========== Источник: OpenNet.RU =========== Похожие новости
|
|
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 22-Ноя 02:49
Часовой пояс: UTC + 5