Program eating memory, but only on one machine? (Solved, sort of)
Per B.Sederberg
persed at princeton.edu
Mon Jan 22 14:44:01 EST 2007
Per B.Sederberg <persed <at> princeton.edu> writes:
> I'll see if I can make a really small example program that eats up memory on
> our cluster. That way we'll have something easy to work with.
Now this is weird. I figured out the bug and it turned out that every time you
call numpy.setmember1d in the latest stable release of numpy it was using up a
ton of memory and never releasing it.
I replaced every instance of setmember1d with my own method below and I have
zero increase in memory. It's not the most efficient of code, but it gets the
job done...
def ismember(a,b):
ainb = zeros(len(a),dtype=bool)
for item in b:
ainb = ainb | (a==item)
return ainb
I'll now go post this problem on the numpy forums.
Best,
Per
More information about the Python-list
mailing list