Используйте для вопросов, касающихся глобальной блокировки интерпретатора CPython
1 ответ

Python 3.3 - subprocess.call и GIL

Простой вопрос: Будет ли экземпляр Python, созданный мной с помощью subprocces.call, подчиняться тому же GIL, что и родительский процесс?
07 фев '14 в 00:56
4 ответа

Многопоточность в python: действительно ли она эффективна в большинстве случаев?

В моем маленьком понимании, это фактор производительности, который управляет программированием для multi-threading в большинстве случаев, но не во всех. (независимо от Java или Python). Я читал эту поучительную статью о GIL в ТАК. В статье обобщаетс…
14 июл '14 в 19:51
2 ответа

Почему бы GIL не влиять на интенсивные многопоточные операции ввода-вывода?

Я знал, что GIL влияет на многопоточность, когда поток выполняет задачу с интенсивным использованием ЦП, и он не может использовать преимущества многоядерности. Но я очень смущен тем, что он хорошо работает, когда поток выполняет интенсивную задачу …
04 дек '15 в 08:19
1 ответ

Можем ли мы запустить многопоточность параллельно в Ruby?

Пожалуйста, дайте мне знать, если есть способ запустить многопоточность параллельно. До сих пор я знаю, что в Ruby есть глобальная блокировка интерпретатора или глобальная блокировка виртуальной машины, которая блокирует потоки для параллельной рабо…
1 ответ

Python Gil странное поведение

Посмотрите на этот кусок кода: from threading import Thread import time cpt = 0 def myfunction(): print("myfunction.start") global cpt for x in range(10): cpt += 1 time.sleep(0.2) print("cpt=%d" % (cpt)) print("myfunction.end") thread1 = Thread(targ…
29 июн '17 в 08:15
1 ответ

Как загрузить картинку из памяти через boost.gil?

Почему gil удалил функцию read_image (stream, ...) После gil версии 49d010ba6e83a64a249d00c934642334155593c2 не будет..
21 ноя '16 в 00:19
2 ответа

Почему Python предоставляет механизмы блокировки, если он подчиняется GIL?

Я знаю, что потоки Python могут выполнять только байт-код по одному за раз, так почему библиотека потоков обеспечивает блокировки? Я предполагаю, что условия гонки не могут возникнуть, если одновременно выполняется только один поток. Библиотека пред…
1 ответ

Понимание упреждающей многозадачности с блокировками и Python GIL?

Я читаю Grok The GIL, и в обсуждении о блокировке есть следующее утверждение. До тех пор, пока ни один поток не удерживает блокировку, пока он спит, выполняет ли ввод-вывод или какую-либо другую операцию сброса GIL, вы должны использовать самые груб…
08 июл '17 в 02:33
1 ответ

Можете ли вы участвовать в гонках в Python, пока есть GIL?

Насколько я понимаю, из-за Глобальной блокировки интерпретатора в cPython в любой момент времени может быть выполнен только один поток. Означает ли это, или это автоматически не защищено от условий гонки, таких как проблема потерянного обновления? П…
25 май '14 в 12:12
2 ответа

Темы Python не улучшают скорость

Чтобы ускорить определенную логику обработки списка, я написал декоратор, который будет 1) перехватывать входящий вызов функции 2) принимать его входной список, разбивать его на несколько частей 4) передавать эти части исходной функции в отдельных п…
17 ноя '14 в 16:27
5 ответов

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

Искал написать немного веб-сканер в Python. Я начинал исследовать написание его в виде многопоточного скрипта с одним пулом загрузки потоков и одним пулом результатов обработки. Из-за GIL это фактически сделало бы одновременную загрузку? Как GIL вли…
13 май '10 в 23:02
2 ответа

Многопоточность Python читает буфер памяти только для чтения GIL

У меня есть много файлов на диске, которые нужно прочитать, 1-й вариант - использовать многопоточность, он очень хорошо работает на SSD. (когда потоки заблокированы IO, он выпустит GIL) Но я хочу достичь такой же или более высокой скорости без SSD, …
01 ноя '16 в 04:34
1 ответ

Функции scipy.sparse освобождают GIL?

Вопрос Делайте scipy.sparse функции, такие как csr._mul_matvec выпустить GIL? контекст Функции Python, которые оборачивают внешний код (например, C), часто освобождают GIL во время выполнения, обеспечивая параллелизм с многопоточностью. Это распрост…
11 янв '15 в 03:49
0 ответов

Выравнивание гистограммы на изображениях RGB? Возможен ли выход RGB?

Я писал код для выравнивания гистограммы на изображениях RGB? Было предложено не выполнять операцию выравнивания по каналам RGB соответственно. Поэтому я сначала преобразовал цветовое пространство RGB в YUV, а затем выполнил выравнивание на канале Y…
22 июн '14 в 10:41
4 ответа

Сколько стоит выпуск GIL?

Предположим, у меня есть функция расширения C, которая делает что-то полностью независимое от интерпретатора Python. Есть ли причина не выпускать GIL? Например, есть ли причина не писать такой код (кроме таких вопросов, как читабельность и отказ от …
21 окт '11 в 23:59
1 ответ

Производительность ухудшается для запросов на основе диапазона в семействе столбцов cassandra, если он реализован с использованием многопоточных вызовов pycassa xget()?

У меня есть типичное семейство широких столбцов с {rowkey -> uuid4+ данными даты и времени в виде столбцов}, для которых я реализовал запрос на основе диапазона, используя вызовы pycassa xget(). Не то чтобы меня мучила низкая производительность с од…
0 ответов

Расширение Python C OpenMP

Я получаю нарушение сегментации в интерпретаторе python при попытке получить доступ к переменной, которая возвращается моим собственным расширением OpenMP C++. Все решения, которые я нашел, используют ctypes или cython (которые я не могу использоват…
1 ответ

Поддерживает ли boost::gil 10-битные изображения?

Я пытаюсь прочитать 10-битные изображения из буфера и проанализировать их с помощью boost::gil. Я заметил, что существует тип rgb8_image_t, тип gray8_image_t, но не могу найти тип gray10_image_t (что мне нужно). Это существует в Gil? Спасибо! РЕДАКТ…
27 июл '18 в 16:42
4 ответа

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

CPython использует глобальную блокировку интерпретатора. Linux удалил все следы Большой блокировки ядра. Какая альтернатива этим замкам? Как система может в полной мере использовать действительно многоядерную или многопроцессорную систему, не остана…
03 мар '11 в 07:34
0 ответов

Python против C# в многопоточности - действительно ли GIL влияет на Python

Я прочитал несколько постов ( здесь и здесь), в которых говорится, что многопоточная система Python на самом деле не является "многопоточной" из-за механизма GIL. Из своего опыта работы с Python я не помню, чтобы я видел большую разницу, поэтому я х…
30 ноя '18 в 22:13