[Numpy-discussion] A memory problem: why does mmap come up in numpy.inner?
Charles R Harris
Wed Jun 4 21:36:08 CDT 2008
On Wed, Jun 4, 2008 at 7:41 PM, Dan Yamins <email@example.com> wrote:
> On Wed, Jun 4, 2008 at 9:06 PM, Charles R Harris <
> firstname.lastname@example.org> wrote:
>> On Wed, Jun 4, 2008 at 6:42 PM, Dan Yamins <email@example.com> wrote:
>>> I'm using python 2.5.2 on OS X, with 8 GB of ram, and a 64-bit
>>> processor. In
>>> this, setting, I'm working with large arrays of binary data. E.g, I want
>>> make calls like:
>>> Z = numpy.inner(a,b)
>>> where and b are fairly large -- e.g. 20000 rows by 100 columns.
>>> However, when such a call is made, I get a memory error that I don't
>>> >>> s = numpy.random.binomial(1,.5,(20000,100)) #creates 20000x100 bin.
>>> >>> r = numpy.inner(s,s)
>>> Python(1714) malloc: *** mmap(size=1600000000) failed (error code=12)
>>> *** error: can't allocate region
>>> *** set a breakpoint in malloc_error_break to debug
>> Are both python and your version of OS X fully 64 bits?
> I'm not sure. My version of OS X is the most recent version, the one that
> ships with a new MacPro Dual Quad-core Xeon 3.2MHz chipset. The processor
> is definitely 64-bit, so I think the operating system probably is enable for
> that, but am not sure. (How would I find out?) As for the python version, I
> thought that 2.5 and above were 64-enabled, but I'm not sure how I'd check
In : numpy.dtype(numpy.uintp).itemsize
which is the size in bytes of the integer needed to hold a pointer. The
output above is for 32 bit python/numpy.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Numpy-discussion