Extending previous Patch #647810, and answering Support
Request #974684, this path will (I hope) fix the memory
leak which when a process executes (for example)
msg, status = mpi.recv(0)
Reference counts for the PyObjects which eventually are
built into the (msg, status) tuple are not properly
decremented. Attached is a simple patch for
pyMPI_util.c and commhelpers.c. I haven't tested it
completely, but mpi.recv() still works and correctly
transmits both large lists and small lists of data, and
the pyMPI processes no longer leak huge amounts of memory.
I hope that you will find this useful and helpful, but
use at your own risk.
Log in to post a comment.