增加NumPy内存限制

4
我目前正在为大型数据集编写一些神经网络,例如MNIST数据集(约为700 * 50000)。但当我进行测试时,我的代码出现了MemoryError。我有一台带有12 GB RAM的计算机,但我认为Python或Numpy无法全部使用它们。
我能否让Python或Numpy使用我PC中所有剩余的可用内存?
操作系统:Windows 7 64位 Python:Python(x, y) 2.7.60
谢谢

可能重复:限制Python虚拟机内存你也可以使用Python绑定Win32来设置进程的最大内存使用量 内存限制 - user555742
1个回答

6

我相信Python(x, y)发行版仅支持32位版本,(64位版本尚在计划中),因此即使您使用64位操作系统,也只能使用32位的地址空间。如果您想访问更多内存,则需要安装64位版本的Python和numpy二进制文件。


哦,好的,现在我可以使用的最大内存是多少? - psuedobot
1
可能需要2 GB的内存来完成整个过程。实际上,由于地址空间的碎片化,您可以分配的数组的最大大小要小得多。考虑安装标准64位Python版本,并从Christoph Gohlke 安装64位的numpy。 - Robert Kern
1
如果我在64位Windows上使用Anaconda Python发行版,我能充分利用我的64位系统吗?还是NumPy仍然有相同的限制? - psuedobot
好的,非常感谢,我已经尝试过了,它可以正常工作。顺便问一下,有没有办法显示我拥有的变量以及它们占用的内存大小? - psuedobot
很抱歉,由于 StackOverflow 评论框太小无法解释,所以不能可靠地回答您的问题。 - Robert Kern
哦,好的谢谢。我只是想知道是否有可能做到。 - psuedobot

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接