Articles of multiprocesamiento

¿Red cliente retorcido con trabajadores multiprocesamiento?

Por lo tanto, tengo una aplicación que utiliza Twisted + Stomper como cliente STOMP que se encarga de un trabajo de multiproceso. Un montón de trabajadores. Esto parece funcionar bien cuando solo uso una secuencia de comandos de Python para activar esto, que (simplificado) se ve algo como esto: # stompclient.py logging.config.fileConfig(config_path) logger = logging.getLogger(__name__) […]

El rendimiento del multiprocesamiento de Python solo mejora con la raíz cuadrada del número de núcleos utilizados

Estoy intentando implementar el multiprocesamiento en Python (Windows Server 2012) y estoy teniendo problemas para lograr el grado de mejora de rendimiento que espero. En particular, para un conjunto de tareas que son casi completamente independientes, esperaría una mejora lineal con núcleos adicionales . Entiendo que, especialmente en Windows, existe una sobrecarga en la apertura […]

Problemas de conexión con SQLAlchemy y múltiples procesos.

Estoy usando PostgreSQL y SQLAlchemy en un proyecto que consiste en un proceso principal que inicia procesos secundarios. Todos estos procesos acceden a la base de datos a través de SQLAlchemy. Estoy experimentando fallos de conexión repetibles: los primeros procesos secundarios funcionan correctamente, pero después de un tiempo se produce un error de conexión. Aquí […]

¿Por qué mi progtwig Python tiene un promedio de solo 33% de CPU por proceso? ¿Cómo puedo hacer que Python use toda la CPU disponible?

Yo uso Python 2.5.4. Mi computadora: CPU AMD Phenom X3 720BE, Mainboard 780G, 4GB de RAM, Windows 7 32 bit. Utilizo el subproceso de Python pero no puedo hacer que todos los procesos de python.exe consumn el 100% de la CPU. ¿Por qué están usando solo alrededor de 33-34% en promedio? Deseo dirigir todos los […]

problema de multiprocesamiento

Estoy escribiendo un progtwig GUI usando PyQt4. Hay un botón en mi ventana principal y al hacer clic en este botón. Espero lanzar un proceso en segundo plano que sea una instancia de una clase derivada de processing.Process. class BackgroundTask(processing.Process): def __init__(self, input): processing.Process.__init__(self) … def run(self): … (Tenga en cuenta que estoy usando el […]

Compartir objeto (instancia de clase) en python usando Managers

Necesito compartir un objeto y sus métodos entre varios procesos en Python. Estoy tratando de usar Administradores (en módulo multiprocesamiento) pero se bloquea. Aquí hay un ejemplo tonto de productor-consumidor donde el objeto compartido entre los dos procesos es solo una lista de números con cuatro métodos. from multiprocessing import Process, Condition, Lock from multiprocessing.managers […]

cómo realizar un seguimiento de los resultados asíncronos devueltos desde un grupo de multiprocesamiento

Estoy tratando de agregar multiprocesamiento a algún código que incluye funciones que no puedo modificar. Deseo enviar estas funciones como trabajos a un grupo de multiprocesamiento de forma asíncrona. Estoy haciendo algo parecido al código que se muestra aquí . Sin embargo, no estoy seguro de cómo realizar un seguimiento de los resultados. ¿Cómo puedo […]

Depuración de subprocesos de Popen con PyCharm

Estoy intentando depurar una aplicación de Python que usa objetos psutil.Popen. Cuando comienzo un subproceso, PyCharm reemplaza mi línea de comando con lo siguiente: python -m pydevd.py –multiproc –client 127.0.0.1 –port 52581 –file que termina en un error: python.exe: Import by filename is not supported. Cuando ejecuto el mismo comando sin la opción -m , […]

Cómo hacer que todos los procesos de pool.apply_async se detengan una vez que cualquier proceso haya encontrado una coincidencia en Python

Tengo el siguiente código que aprovecha el multiprocesamiento para iterar a través de una lista grande y encontrar una coincidencia. ¿Cómo puedo hacer que todos los procesos se detengan una vez que se encuentra una coincidencia en cualquiera de los procesos? He visto ejemplos, pero ninguno de ellos parece encajar en lo que estoy haciendo […]

¿Cómo multiprocesar, multiprocilar un archivo grande al dividirlo en pequeños fragmentos en función de los valores de una columna en particular?

He escrito un progtwig en Python para un proceso biológico https://codereview.stackexchange.com/questions/186396/solve-the-phase-state-between-two-haplotype-blocks-using-markov-transition-proba . Si observa ese progtwig, puede ver que el progtwig lleva mucho tiempo computando datos de dos líneas consecutivas (o teclas, valores) a la vez. No estoy poniendo todo el código aquí, pero por simplicidad estoy creando un archivo simulado y un progtwig simulado […]