Python crashes while printing a huge numpy array (Windows 1.6b2)
Hello, due a mistake i found the following bug: import numpy as np x=np.zeros((262144, 262144)) print x.shape print x The last line crashes the python interpreter without any feedback. Windows 7, Python 2.6.5, Numpy 1.6b2
On Sat, Apr 23, 2011 at 10:33 PM, Till Stensitzki <mail.till@gmx.de> wrote:
Hm, this is a bit weird. The line x = np.zeros... should fail (you most likely do not have 512 Gb Ram available on your machine :) ). Maybe a check is wrong due to some wrong configuration on windows. Are you on windows 32 or 64 bits ? cheers, David
On Sat, Apr 23, 2011 at 9:41 AM, David Cournapeau <cournape@gmail.com> wrote:
32 bit python on Windows 7 (64) I get the correct value error with python 2.6.5 and numpy 1.5.1 but on python 2.5.4 with numpy 1.3.0 I get the crash instead of the ValueError. Josef
On Sat, Apr 23, 2011 at 8:11 AM, Till Stensitzki <mail.till@gmx.de> wrote:
Do you also have an earlier version of numpy installed? As David says, this should raise an error for recent numpy and I'm wondering if you are inadvertently running an earlier version. Chuck
On Sat, Apr 23, 2011 at 9:58 AM, Till Stensitzki <mail.till@gmx.de> wrote:
Hi, I can get this with 64-bit Win 7, 32-bit Python 2.6, 2.7 (below) and 3.1 and numpy 1.6b (fresh install) IDLE and the command line. I can also confirm the 'ValueError' with Python2.6 and numpy 1.51 on the same system. Actually this is 'weird' when printing and crashed with the range - accessing unassigned memory? A smaller array gives an numpy error or memory error in idle. Bruce
================================ RESTART ================================ import numpy as np
x=np.zeros((26214, 26214))
Traceback (most recent call last): File "<pyshell#7>", line 1, in <module> x=np.zeros((26214, 26214)) ValueError: array is too big.
x=np.zeros((262144, 26214))
Traceback (most recent call last): File "<pyshell#8>", line 1, in <module> x=np.zeros((262144, 26214)) MemoryError
On Sat, Apr 23, 2011 at 11:09 AM, Bruce Southey <bsouthey@gmail.com> wrote:
This was fixed before, maybe it got broken again. Since this looks windows specific, I'm guessing it has something to do with the size of long being 32 bits. The previous problem was integer overflow when multiplying the dimensions together to get the array size when repeated divisions of the maximum size should have be used instead. Chuck
On 4/23/2011 10:41 AM, Charles R Harris wrote:
Could be related to this change: <https://github.com/numpy/numpy/commit/fcc6cc73ddcb1fc85446ba9256ac24ecdda6c6...> Christoph
On Sat, Apr 23, 2011 at 3:38 PM, Christoph Gohlke <cgohlke@uci.edu> wrote:
My, that does look suspicious ;) Could you revert that loop and test it out? There was also a function for doing that check, I don't recall which, and it should probably be checked to make sure it remains as was. Chuck
participants (7)
-
Bruce Southey
-
Charles R Harris
-
Christoph Gohlke
-
David Cournapeau
-
josef.pktd@gmail.com
-
Sturla Molden
-
Till Stensitzki