中关村在线

首页 排行 新品 问答 下载 论坛 手机 笔记本 数码相机 主板 显卡 平板电脑 更多

电脑的内存空间明明足够,但电脑老提示内存不足,到底是怎么回事?

举报
讨论回答 (7)
L_a_V
qwe2720667
18638970970
qq4686559
一般out of memenry存在以下几种情况:
1、 变量需要的存储空间超过了可用的内存空间
2、 数据需要的存储空间,超过内存中最大的可用连续存储空间
3 、程序和问题求解方法的设计不周,导致内存溢出。
解决方法如下:
1、为矩阵变量预制内存而不是动态分配
在动态分配的过程中,由于开始Matlab所用的Block随着矩阵的增大而连续的为此矩阵分配内存,但是由于Block的不连续性,很有可能最开始分配的Block不能满足存储的需要,Matlab只好移动此Block以找到更大的Block来存储,这样在移动的过程中不但占用了大量的时间,而且很有可能它找不到更大的块,导致Out of Memory。而当你为矩阵变量预制内存时,Matlab会在计算开始前一次性找到最合适的Block,此时就不用为变量连续的分配内存。
比较下面两个程序:
(1)for k = 2:1000
x(k) = x(k-1) + 5;
end
(2)x = zeros(1, 1000);
for k = 2:1000
x(k) = x(k-1) + 5;
end
显然,第二个更好。最好的方法是,在程序一开始就位所有大的矩阵变量预制存存储单元。
2、尽量早的分配大的矩阵变量
Matlab使用heap method管理内存。
当在Matlab heap中没有足够的内存使用时,它会向系统请求内存。
但是只要内存碎片可以存下当前的变量,Matlab会重新使用内存。
所在在大内存变量clear以后,新建的小内存变量仍可以使用那部分内存空间,但相反就不行了。比如说a变量4M,b、c、d、e分别为1M,如果a被clear以后定义bcde,则可以使用a的空间,如果clear b,c,d,e以后,假如这四个变量不是连续的,那么a就不能使用它们释放的内存。
3、尽量避免产生大的瞬时变量,当它们不用的时候应该及时clear
4、将矩阵转化成稀疏形式
如果矩阵中有大量的0,最好存储成稀疏形式。稀疏形式的矩阵使用内存更少,执行时间更短。
5、使用pack命令
当内存被分为很多碎片以后,其实本身可能有很大的空间,只是没有作构的连续空间即大的Block而已。如果此时Out of Memory,此时使用pack命令可以很好的解决此问题。
6、如果可行的话,将一个大的矩阵划分为几个小的矩阵,这样每一次使用的内存减少。
7、增大虚拟内存
Windows XP,右键“我的电脑”->属性->高级->性能->设置,从而改变其虚拟内存。
Windows 7,右键“计算机”->属性->(左边栏)高级系统设置->高级->(性能)设置->高级->(虚拟内存)更改,建议物理内存的两倍左右,如果物理内存已经3G+,那就不用调整了。
8、尽量少使用系统资源(对于Windows)
Windows中字体、窗口等都是要占用系统资源的,所以在Matlab运行时尽量不要打开不用的窗口。
9、如果没有必要,不要启动java虚拟机,采用matlab -nojvm启动 (在快捷方式属性里面的 "..../matlab.exe") 改为("...../matlab.exe" - nojvm)
10、关闭Matlab Server
jltx0919
ytxinruidianzi
324056
展开查看全部 7 条讨论
相关问题

二手手机

1.6万 浏览 311 回答

电脑

2.1万 浏览 194 回答

笔记本电脑

1.3万 浏览 181 回答

2019联想拯救者y7000 I7 9750游戏笔记本

1252 浏览 119 回答

为什么现在年轻人都喜欢买OPPO和vivo,不再喜欢性价比高的小米了?

15.4万 浏览 73 回答

扩展阅读

ThinkPad T14s AI 2024锐龙版评测:首搭锐龙AI PRO 300平台

评论 69

ThinkPad T14s AI 2024锐龙版评测:首搭锐龙AI PRO 300平台

戴尔Latitude 7455评测:14英寸触屏移动办公利器

评论 41

戴尔Latitude 7455评测:14英寸触屏移动办公利器

游戏AI生产力一个不能少!上手体验暗影骑士·擎6全能本

评论 62

游戏AI生产力一个不能少!上手体验暗影骑士·擎6全能本

惠普满血焕新服务

评论 29

惠普满血焕新服务

高效AI体验 长效续航能力 体验华硕无畏Pro 14 AI超轻薄本

评论 72

高效AI体验 长效续航能力 体验华硕无畏Pro 14 AI超轻薄本
热门问题

字节跳动旗下12款产品

6813 浏览 6 回答

字节跳动旗下12款产品

免费韩国漫画在线观看的地址有么?

8059 浏览 5 回答

免费韩国漫画在线观看的地址有么?

求推荐一款笔记本。工科研究生用,便于随身携带。平时做科研,处理数据,查阅文献。不玩网游和单机,至多玩棋牌游戏和影音。喜欢摄影,需要修图。附加:纠结要不要带数字键盘区。预算最多8000。尽量便宜些。

1.2万 浏览 6 回答

求推荐一款笔记本。工科研究生用,便于随身携带。平时做科研,处理数据,查阅文献。不玩网游和单机,至多玩棋牌游戏和影音。喜欢摄影,需要修图。附加:纠结要不要带数字键盘区。预算最多8000。尽量便宜些。

有一样东西,比雪还白,比黑板还黑,男的一天用三次,女的一辈子用一次,是什么?

6439 浏览 7 回答

有一样东西,比雪还白,比黑板还黑,男的一天用三次,女的一辈子用一次,是什么?

荣耀Magic7 Pro

9819 浏览 1 回答

荣耀Magic7 Pro

在哪里可以免费看韩漫的?

2876 浏览 6 回答

在哪里可以免费看韩漫的?

一公里大约多少步数 一公里有多少步

7512 浏览 8 回答

一公里大约多少步数 一公里有多少步

肿么找回QQ浏览器历史记录

7305 浏览 6 回答

肿么找回QQ浏览器历史记录

苹果手机怎么打开apk文件

2万 浏览 6 回答

苹果手机怎么打开apk文件

快手网页版不用下载直接打开

2245 浏览 6 回答

快手网页版不用下载直接打开
最新问答

有坏道的硬盘,里面的文件中部分是破损的,拷出来放到新的硬盘会不会破损新硬盘?

1万 浏览 10 回答

有坏道的硬盘,里面的文件中部分是破损的,拷出来放到新的硬盘会不会破损新硬盘?

为何cad布局里的图框不见了???

4189 浏览 6 回答

为何cad布局里的图框不见了???

EXCEL插入对象PDF为何图标显未为白框

2342 浏览 4 回答

EXCEL插入对象PDF为何图标显未为白框

steam上子弹风暴有中文吗

3231 浏览 5 回答

steam上子弹风暴有中文吗

如何一次性删除EXCEL中所有定义的名稱

9193 浏览 5 回答

如何一次性删除EXCEL中所有定义的名稱
举报
举报成功

经过核实后将会做出处理,感谢您为社区和谐做出贡献。

请选择删除原因
删除成功
确定推荐该回答?
推荐成功

更多频道

频道导航
辅助工具