Matlab “是否有一个阈值?”;“内存不足”;错误?
当我使用一些代码时,比如Matlab “是否有一个阈值?”;“内存不足”;错误?,matlab,memory,memory-management,out-of-memory,Matlab,Memory,Memory Management,Out Of Memory,当我使用一些代码时,比如 x = randi(100,[1000 1000000]); 我的内存不足错误 但是当我 x = randi(100,[1000 500000]); 我没有收到任何错误,但我的笔记本电脑几乎停止工作 这有时会让我花费强制关机 我真的希望内存不足错误 Q1+Q2:对于该错误是否有一个我可以调整的阈值 问题3:或者任何其他建议(可能限制MATLAB可以访问的内存) 谢谢,A1:是的,记忆是最棒的 虽然内存有限,但您观察到的几乎停止工作“与计算所有500000000个元
x = randi(100,[1000 1000000]);
我的内存不足
错误
但是当我
x = randi(100,[1000 500000]);
我没有收到任何错误,但我的笔记本电脑几乎停止工作
这有时会让我花费强制关机
我真的希望内存不足错误
Q1+Q2:对于该错误是否有一个我可以调整的阈值
问题3:或者任何其他建议(可能限制MATLAB可以访问的内存)
谢谢,A1:是的,记忆是最棒的
虽然内存有限,但您观察到的几乎停止工作“与计算所有500000000个元素的值并存储它们的任务相关的CPU限制处理有关。正如您在A3中所看到的,此尝试只需要4GB RAM存储来处理x
A2:是的。添加更多内存以调整Treshold
如果您的问题需要更大的对象,请获得更多的空间来存储它;如果CPU受限的观察很重要,请从分布式处理(无论是云还是网格)获取计算以卸载本地主机
A3:是的。使用whos
谢谢你的回答。假设在4G
中,我的内存已满,当MATLAB中的所有变量都大于3G
时,我是否可以调整以产生错误?因为即使我使用了更多内存,也有可能在某些点挂起。请尝试help whos
Kamtal
mCloud:1> x = randi( 100, [1000 500000] );
mCloud:2> whos
Variables in the current scope:
Attr Name Size Bytes Class
==== ==== ==== ===== =====
ans 1x70 757 cell
x 1000x500000 4000000000 double
Total is 500000070 elements using 4000000757 bytes
mCloud:3>