我必须在只有几GB虚拟内存的资源受限环境中运行python。更糟糕的是,作为应用程序设计的一部分,我必须从主进程中派生子进程,所有子进程都会在fork上接收相同数量的虚拟内存的“写时拷贝”分配。结果是,在只分了1-2个孩子之后,这个过程组达到了最高点,关闭了所有的东西。最后,我不能删除numpy作为一个依赖项;这是一个严格的要求。在
关于如何降低初始内存分配有什么建议吗?在
例如
详细信息:
Red Hat Enterprise Linux Server 6.9版(圣地亚哥)
Python 3.6.2
数量=1.13.3
裸翻译:
import os
os.system('cat "/proc/{}/status"'.format(os.getpid()))
# ... VmRSS: 7300 kB
# ... VmData: 4348 kB
# ... VmSize: 129160 kB
import numpy
os.system('cat "/proc/{}/status"'.format(os.getpid()))
# ... VmRSS: 21020 kB
# ... VmData: 1003220 kB
# ... VmSize: 1247088 kB
谢谢你,skullgoblet1089,在https://github.com/numpy/numpy/issues/10455上提出问题,并回答了你的问题。 引用您2018-01-24帖子:
使用
export OMP_NUM_THREADS=4
减少线程将降低VM分配。在相关问题 更多 >
编程相关推荐