Memory matlab“;“记忆”;mac上的功能?

Memory matlab“;“记忆”;mac上的功能?,memory,matlab,Memory,Matlab,在Windows计算机上,MATLAB用户可以使用或命令。但是,这两项都不能在机器上工作,故障如下: >> memory ??? Error using ==> memory Function MEMORY is not available on this platform. >> feature memstats ??? Error using ==> feature An unknown feature was specified >>记忆 ??? 使用==>内存时出错 功能存储器在此平台

在Windows计算机上,MATLAB用户可以使用或命令。但是,这两项都不能在机器上工作,故障如下:

>> memory ??? Error using ==> memory Function MEMORY is not available on this platform. >> feature memstats ??? Error using ==> feature An unknown feature was specified >>记忆 ??? 使用==>内存时出错 功能存储器在此平台上不可用。 >>功能memstats ??? 使用==>功能时出错 指定了未知功能
有人知道如何在Mac上访问有关matlab内存使用情况的信息吗?

我找不到一个能再现
内存功能的命令。但是,如果您知道系统的总内存量,则可以使用(或从文件交换获取更多详细信息)来估计变量当前使用的内存量以及可用空间量

顺便说一下,您可以通过调用

java.lang.Runtime.getRuntime.maxMemory
java.lang.Runtime.getRuntime.totalMemory
java.lang.Runtime.getRuntime.freeMemory

请注意,Matlab内存和Java内存是不同的-Java内存用于UI,包括图形以及其他Java对象,而
memory
报告可用于变量和计算的内存

内存
仅在Windows系统上可用


您可以尝试使用
top
内置的Mac命令来代替。

我知道这个问题已经很老了,而且已经有了答案,但是对于任何想找到这个答案的人来说,这是一个在所有平台上都可以使用whos的替代方案:

allvars = whos;
memused = sum([allvars.bytes]);

这假设脚本/函数只使用一个工作区。如果您的脚本使用多个工作区,则需要指定所有不同的工作区并将它们添加到一起。

不幸的是,无论是这个答案还是@philippe的答案,我都不知道有多少分配给了matlab,matlab引擎使用了多少,或者确保内存是连续的,所有这些都是因子(). 然而,这是一个很好的解决办法。@eykanal:linux系统传统上有更好的内存管理(尽管Windows最近似乎有了很大的改进),所以最大块的大小在Windows中主要是一个问题。然而,不知道Mac上的内存量的真正问题是,你不知道什么时候开始分页。好吧,这,而且Matlab显然只使用,这取决于它是32位还是64位体系结构。我处理的是非常大的数据集,因此会产生显著的差异。@eykanal:在32位操作系统上,单个程序不能处理超过3GB的RAM(除非你开始做很多技巧),因此我不认为这是Matlab特有的问题。请注意,在MacOSX上,无论您是启动32位内核还是64位内核,64位Matlab都可以处理所有内存。谢谢,在我写上一封回复时,我意识到我使用的是32位版本的Matlab(2009a)。我现在正在升级到2010版,希望一切都会好起来。谢谢另请参见此问题:。