5
ответов

Обходное решение Глобальной блокировки интерпретатора (GIL) Python в многоядерных системах с помощью taskset на Linux?

Таким образом, я только что закончил следить за этим разговором о Глобальной блокировке интерпретатора (GIL) Python http://blip.tv/file/2232410. Суть его - то, что GIL является довольно хорошим дизайном для одноядерных систем (Python...
вопрос задан: 24 November 2011 15:37
5
ответов

GIL в Python 3.1

Делает кто-либо знает, что судьба Глобального Интерпретатора Привязывает Python 3.1 против интеграции многопоточности C++
вопрос задан: 3 August 2009 15:18
4
ответа

Многопоточный поисковый робот в Python действительно ускоряют вещи?

Надеялся писать немного поискового робота в Python. Я начинал исследовать запись его как многопоточный сценарий, один пул загрузки потоков и результатов обработки пула. Из-за GIL...
вопрос задан: 13 May 2010 23:02
3
ответа

Какова глобальная блокировка интерпретатора (GIL) в CPython?

Что такое глобальная блокировка интерпретатора и почему это - проблема? Много шума было сделано вокруг удаления GIL из Python, и я хотел бы понять, почему это настолько важно. Я никогда не писал...
вопрос задан: 16 October 2018 05:16
3
ответа

Выпуск Python GIL, в то время как в коде C++

Мне записали библиотеку в C++, который я переношу БОЛЬШОЙ ГЛОТОК использования и использование в Python. Обычно существует один класс с немногими методами. Проблема состоит в том, что вызов этих методов может быть трудоемким - они могут...
вопрос задан: 3 June 2015 12:47
3
ответа

Что GIL Python имеет отношение к сборщику "мусора"?

Я просто видел, что этот раздел документации Ненагруженной Ласточки подошел на Hacker News. В основном это - инженеры Google, говорящие, что они не оптимистичны относительно удаления GIL. Однако это кажется...
вопрос задан: 26 October 2010 17:32
3
ответа

Как избежать предупреждения gcc в расширении Python C при использовании Py_BEGIN_ALLOW_THREADS

Самый простой способ управлять GIL в расширениях Python C состоит в том, чтобы использовать обеспеченные макросы: my_awesome_C_function () {вздор; Py_BEGIN_ALLOW_THREADS//наполняют, которому не нужно...
вопрос задан: 27 January 2010 15:23
3
ответа

GIL Python действительно на интерпретатор?

Я часто вижу, что люди говорят, что GIL на интерпретатор Python (даже здесь на stackoverflow). Но что я вижу в исходном коде, что это, кажется, что GIL является глобальной переменной и поэтому там...
вопрос задан: 18 October 2009 16:03
3
ответа

Почему не там никакой GIL в виртуальной машине Java? Почему для Python нужен тот настолько плохо?

Я надеюсь, что кто-то может обеспечить некоторое понимание относительно того, что является существенно особенным в виртуальной машине Java, которая позволяет ему реализовывать потоки приятно без потребности в Глобальном Интерпретаторе...
вопрос задан: 14 June 2009 01:12
2
ответа

Есть ли некоторые случаи, где потоки Python могут безопасно управлять общим состоянием?

Некоторое обсуждение в другом вопросе призвало меня к лучше понять случаи, где блокировка требуется в многопоточных программах Python. На эту статью о поточной обработке в Python у меня есть несколько...
вопрос задан: 29 April 2010 20:06
1
ответ

Почему Python переключает потоки?

В документации Python о потоках и GIL говорится: «Чтобы эмулировать параллелизм выполнения, интерпретатор регулярно пытается переключать потоки (см. Sys.setswitchinterval ()) Почему ...
вопрос задан: 18 January 2019 15:21
1
ответ

Как определить подходящий интервал проверки?

Я только начинаю работать над приложением торнадо, которое имеет некоторые проблемы с процессором. Время ЦП будет монотонно расти с течением времени, максимизируя ЦП на 100%. Система в настоящее время разработана ...
вопрос задан: 24 August 2010 18:10
0
ответов

Каковы последствия вызова функций NumPy C API из нескольких потоков?

Это рискованный бизнес, и я понимаю, что глобальная блокировка интерпретатора является грозным противником параллелизма. Однако, если я использую NumPy C API (в частности, макрос PyArray_DATA в массиве NumPy), ...
вопрос задан: 17 August 2015 20:22
0
ответов

Бесполезна многопроцессорная обработка с urllib2?

Недавно я попытался ускорить небольшой инструмент (который использует urllib2 для отправки запроса на (неофициальный) twitter-button-count-url (> 2000) urls) и анализирует его результаты) с помощью модуля многопроцессорности (и ...
вопрос задан: 5 January 2014 02:59
0
ответов

Как я могу проверить, содержит ли поток в настоящее время GIL?

Я попытался найти функцию, которая сообщает мне, имеет ли текущий поток глобальную блокировку интерпретатора или нет. Документация Python/C -API, похоже, не содержит такой функции. Мой нынешний...
вопрос задан: 26 February 2013 18:30
0
ответов

Встраивание python в многопоточное приложение на C

Я встраиваю интерпретатор python в многопоточное приложение на C и немного не понимаю, какие API следует использовать для обеспечения безопасности потоков. Из того, что я понял, при встраивании python это...
вопрос задан: 21 August 2012 00:43
0
ответов

SWIG C ++ Полиморфизм Python и многопоточность

Я интегрирую сторонний пакет C ++ в приложение Python с помощью SWIG. Пакет подключается к проприетарному API по сети и получает обновления. Общий поток состоит в том, что python создает экземпляры ...
вопрос задан: 5 March 2012 15:35
0
ответов

Когда потоки Python бывают быстрыми?

Мы все знаем об ужасах GIL, и я видел много дискуссий о том, когда лучше всего использовать multiprocessing модуля, но я все еще не чувствую, что у меня есть хорошая интуиция, когда ...
вопрос задан: 24 January 2012 21:28
0
ответов

Какова стоимость выпуска GIL?

Предположим, у меня есть функция расширения языка C, которая делает что-то, полностью независимое от интерпретатора Python. Есть ли причина не выпускать GIL? Например, есть ли причина ...
вопрос задан: 21 October 2011 23:59
0
ответов

Sys.setswitchiTsiviterval в Python 3.2 и выше

Python 3.2 ввел новую реализацию GIL Antoine Pitrou, который обнажает функцию Sys.setswitchiTherviTerval. Когда будет изменяться это полезно, и почему?
вопрос задан: 11 September 2011 06:52
0
ответов

numpy и Global Interpreter Lock

Я собираюсь написать некоторый вычислительно-интенсивный код Python, который почти наверняка будет проводить большую часть своего времени внутри функций линейной алгебры numpy. Рассматриваемая проблема поразительно параллельна. ...
вопрос задан: 1 June 2011 11:31
0
ответов

Как устранить / обойти проблему блокировки, которая, по-видимому, связана с GIL

Неизвестная блокировка -up между двумя потоками, похоже, связано с глобальной блокировкой интерпретатора или какой-либо другой «скрытой блокировкой», и я не понимаю, как продолжить устранение неполадок. Любые советы, как ...
вопрос задан: 31 March 2011 00:09
0
ответов

Как интерпретирующий язык может избежать использования глобальной блокировки интерпретатора (GIL)?

CPython использует глобальную блокировку интерпретатора. Linux удалил все следы Big Kernel Lock. Какая альтернатива этим замкам? Как система может в полной мере использовать по-настоящему многоядерные или многоядерные ...
вопрос задан: 3 March 2011 08:36
0
ответов

Потоки Python и GIL

Я читал о GIL, но на самом деле он никогда не указано, включает ли он основной поток или нет (я так полагаю). Причина, по которой я спрашиваю, заключается в том, что у меня есть программа с настройкой потоков, которая изменяет словарь. ...
вопрос задан: 20 January 2011 15:11
0
ответов

Что такое C # ' s версия GIL?

В текущей реализации CPython есть объект, известный как «GIL» или «Global Interpreter Lock». По сути, это мьютекс, который не позволяет двум потокам Python выполнять код Python в ...
вопрос задан: 26 October 2010 18:02
0
ответов

Python требует GIL. Но Jython & IronPython не делает. Почему?

Почему случается так, что можно выполнить Jython и IronPython без потребности в GIL, но Python (CPython) требует GIL?
вопрос задан: 7 August 2010 05:04