numpy.memmap returns 内存不足,但有足够的可用空间
numpy.memmap returns not enough memory while there are plenty available
在 64 位 windows 机器上对 numpy.memmap()
的典型调用期间,python 引发以下错误:
OSError: [WinError 8] Not enough memory resources are available to process this command
另一台 windows 机器用不同的文本引发相同的错误:
OSError: [WinError 8] Not enough storage is available to process this command.
代码摘要如下:
with open(infile, 'rb') as f:
......
array = numpy.memmap(f, dtype='uint8', mode='r', offset=offset, shape=arraysize).tolist()
Python 这次只用了 50MB 的内存。 运行 内存不足的原因是什么?
事实证明这里的问题是 memmap 调用中的 offset
+ shape
大于文件的总大小(即我试图读取超出文件)。
关于内存资源的错误消息在这种情况下有点误导。
在 64 位 windows 机器上对 numpy.memmap()
的典型调用期间,python 引发以下错误:
OSError: [WinError 8] Not enough memory resources are available to process this command
另一台 windows 机器用不同的文本引发相同的错误:
OSError: [WinError 8] Not enough storage is available to process this command.
代码摘要如下:
with open(infile, 'rb') as f:
......
array = numpy.memmap(f, dtype='uint8', mode='r', offset=offset, shape=arraysize).tolist()
Python 这次只用了 50MB 的内存。 运行 内存不足的原因是什么?
事实证明这里的问题是 memmap 调用中的 offset
+ shape
大于文件的总大小(即我试图读取超出文件)。
关于内存资源的错误消息在这种情况下有点误导。