最近在运行一个python项目,不过并不熟悉python,因为一直在做java开发的工作。最近改了一个python项目里的SQL,查询的数据量更大了,运行后抛出异常,所以初步怀疑是内存不够
pycharm Unable to allocate 75.9 MiB for an array with shape (17, 1170427)
通过在linux上查看,使用free命令查看系统内存使用情况
free
也给pycharm 修改分配的内存空间,找到pycharm安装目录,找到pycharm64.exe.vmoptions
,修改Xms
和Xmx
-Xms1024m
-Xmx2048m
-XX:ReservedCodeCacheSize=240m
-XX:+UseConcMarkSweepGC
-XX:SoftRefLRUPolicyMSPerMB=50
-ea
-Dsun.io.useCanonCaches=false
-Djava.net.preferIPv4Stack=true
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-javaagent:D:\Program Files\JetBrains\PyCharm 2018.1.4\bin\JetbrainsCrack-2.8-release-enc.jar
不过,修改后,运行还是报错,不过,并不否定网上修改内存空间的做法,这个报错估计也和内存空间有关系,后面在网上找到一篇博客,里面的读者也是讨论了很多方法
https://stackoverflow.com/questions/62839068/memoryerror-unable-to-allocate-mib-for-an-array-with-shape-and-data-type-when
不过,自己遇到的情况是通过升级python版本为64位处理的,python32位有些程序内存空间不支持,因为程序是接手的,所以排查程序比较花时间,所以通过升级python版本处理问题,记录一下,python版本位数也会影响程序运行