Articles of gil

Hilo de Python y GIL

Estaba leyendo sobre el GIL y nunca se especificó realmente si esto incluye el hilo principal o no (supongo que sí). La razón por la que pregunto es porque tengo un progtwig con una configuración de subprocesos que modifica un diccionario. El hilo principal agrega / elimina en función de la entrada del jugador, mientras […]

¿Cuándo son rápidos los hilos de Python?

Todos somos conscientes de los horrores de la GIL , y he visto mucha discusión sobre el momento adecuado para usar el módulo de multiprocessing , pero todavía no siento que tenga una buena intuición sobre cómo enhebrar en Python ( Centrarse principalmente en CPython) es la respuesta correcta. ¿En qué casos la GIL no […]

GIL en Python 3.1

¿Alguien sabe el destino del locking global de intérpretes en Python 3.1 contra la integración de subprocesamiento múltiple de C ++?

Bloqueo de intérprete global y numpy

Estoy a punto de escribir un código Python intensivo en cómputo que casi con toda seguridad pasará la mayor parte de su tiempo dentro de las funciones de álgebra lineal de numpy . El problema en cuestión es vergonzosamente paralelo . En pocas palabras, la forma más fácil de aprovechar eso sería usar varios subprocesos. […]

Incrustación de python en aplicaciones C multiproceso

Estoy incorporando el intérprete de python en una aplicación de C multiproceso y estoy un poco confundido en cuanto a las API que debo usar para garantizar la seguridad de los subprocesos. De lo que he recostackdo, cuando incrusté python, depende del integrador cuidar del locking de GIL antes de llamar a cualquier otra llamada […]

Una pregunta sobre python GIL

¿La presencia de Python GIL implica que en el subprocesamiento múltiple de python la misma operación no es tan diferente de repetirla en un solo subproceso? Por ejemplo, si necesito cargar dos archivos, ¿cuál es la ventaja de hacerlo en dos subprocesos en lugar de cargarlos uno tras otro? Intenté una gran operación matemática en […]

¿Por qué este script de Python se ejecuta 4 veces más lento en varios núcleos que en un solo núcleo?

Estoy tratando de entender cómo funciona GIL de CPython y cuáles son las diferencias entre GIL en CPython 2.7.xy CPython 3.4.x. Estoy usando este código para la evaluación comparativa: from __future__ import print_function import argparse import resource import sys import threading import time def countdown(n): while n > 0: n -= 1 def get_time(): stats […]

Liberar Python GIL mientras está en código C ++

Tengo una biblioteca escrita en C ++ que envuelvo con SWIG y la uso en python. Generalmente hay una clase con pocos métodos. El problema es que llamar a estos métodos puede llevar mucho tiempo, ya que pueden colgar mi aplicación (GIL no se libera al llamar a estos métodos) Así que mi pregunta es: […]

Es concurrent.futures una medicina de la GIL?

Estaba buscando esta nueva implementación, y uso Python 2.7, debo instalar esto , así que si lo uso, ¿olvidaré la palabra GIL en CPython?

Hilos verdes e hilo en Python

Como dice la Wikipedia : Los subprocesos verdes emulan entornos de subprocesos múltiples sin depender de las capacidades del sistema operativo nativo, y se administran en el espacio del usuario en lugar del espacio del núcleo, lo que les permite trabajar en entornos que no tienen soporte de subprocesos nativos. Los subprocesos de Python se […]