在MATLAB中运行程序后查找时间和内存

在MATLAB中运行程序后查找时间和内存,matlab,time,Matlab,Time,在matlab中,程序运行完成后,是否有任何方法可以找到内存和时间? 此外,如果工作区已保存,然后再次加载,是否可以查看它的时间和内存? 谢谢 就时间消耗而言,工作是否正常?它会稍微降低执行速度,但对于调试来说很好。否则,请尝试用tic-toc将要计时的部分括起来 对于内存消耗,我认为,过去和现在都没有真正方便的方法,但是,这里可能发生了一些事情。这就是几年前的答案。您可以尝试whos,但该选项仅在当前范围内有效。此外,内存可用于查看matlabs的总内存消耗量 加载文件所需的时间应该可以通过使

在matlab中,程序运行完成后,是否有任何方法可以找到内存和时间? 此外,如果工作区已保存,然后再次加载,是否可以查看它的时间和内存?
谢谢

就时间消耗而言,工作是否正常?它会稍微降低执行速度,但对于调试来说很好。否则,请尝试用
tic
-
toc
将要计时的部分括起来

对于内存消耗,我认为,过去和现在都没有真正方便的方法,但是,这里可能发生了一些事情。这就是几年前的答案。您可以尝试
whos
,但该选项仅在当前范围内有效。此外,
内存
可用于查看matlabs的总内存消耗量


加载文件所需的时间应该可以通过使用通常的
tic
-
toc
命令将其封装起来查看。使用文件上的
dir
可以查看磁盘上保存文件的大小,但在matlab中大小可能不同。我想最安全的方法是在保存之前检查大小,如果它将在相同的执行下加载,否则可能很方便以某种方式记录大小。

对于时间消耗,是否可以工作?它会稍微降低执行速度,但对于调试来说很好。否则,请尝试用
tic
-
toc
将要计时的部分括起来

对于内存消耗,我认为,过去和现在都没有真正方便的方法,但是,这里可能发生了一些事情。这就是几年前的答案。您可以尝试
whos
,但该选项仅在当前范围内有效。此外,
内存
可用于查看matlabs的总内存消耗量


加载文件所需的时间应该可以通过使用通常的
tic
-
toc
命令将其封装起来查看。使用文件上的
dir
可以查看磁盘上保存文件的大小,但在matlab中大小可能不同。我想最安全的方法是在保存之前检查大小,看它是否会在相同的执行下加载,否则以某种方式记录大小可能会很方便。

不知道我是否正确回答了您的问题,但如果您需要跟踪函数所用的时间,有两种方法:

功能

tic;
t=toc
像秒表一样工作,tic开始计数,toc告诉你距离上次tic已经过去了多久

如果您需要对时间进行更深入的分析,matlab还提供了一个
profile
函数。 我建议您阅读matlab文档,了解如何使用它

希望我能帮忙


S.

不知道我是否正确回答了您的问题,但如果您需要跟踪函数所用的时间,有两种方法:

功能

tic;
t=toc
像秒表一样工作,tic开始计数,toc告诉你距离上次tic已经过去了多久

如果您需要对时间进行更深入的分析,matlab还提供了一个
profile
函数。 我建议您阅读matlab文档,了解如何使用它

希望我能帮忙


S.

对于代码行之间的执行时间,请使用:

tic;
toc;
t = toc;
disp(['Execution time: ' num2str(t)])
要了解和显示变量的内存使用情况,可以使用
whos

whos
S = whos;  % type struct variable containing all the info of the actual workspace
S.bytes
要计算总存储量,可以进行循环

Memory = 0;
S = whos;
for k = 1:length(S)
    Memory = Memory + S(k).bytes;
end 
disp(['Total memory used by variables in storage (Bytes): ' num2str(Memory)])

您可能更喜欢查看mathworks中的
whos
页面,了解代码行之间的执行时间,请使用:

tic;
toc;
t = toc;
disp(['Execution time: ' num2str(t)])
要了解和显示变量的内存使用情况,可以使用
whos

whos
S = whos;  % type struct variable containing all the info of the actual workspace
S.bytes
要计算总存储量,可以进行循环

Memory = 0;
S = whos;
for k = 1:length(S)
    Memory = Memory + S(k).bytes;
end 
disp(['Total memory used by variables in storage (Bytes): ' num2str(Memory)])

您可能更喜欢在mathworks中查看
whos
页面

谢谢您的回答。但这与我的问题无关。我的意思是你运行一个程序。然后你就拯救了工作场所。最后,您重新启动pc。现在,是否可以查看以前运行的每个函数使用的时间和内存?正如mathworks的回答所建议的,获取此信息的机会是有限的。我已经给了你一些工具,然后就取决于你如何实现它。我想是时候开始登录了。而且,你甚至没有告诉我你需要什么信息。峰值内存分配,一些经常调用的函数的内存分配。。。?不过,你是否真的认为你可以运行一个程序,重新启动你的电脑,然后以某种神奇的方式检索所请求的数据。很明显,您需要以某种方式记录它。需要保存请求的信息。AliBodaghi没有意识到可以保存配置文件结果。这里有一个提示:谢谢你的回答。但这与我的问题无关。我的意思是你运行一个程序。然后你就拯救了工作场所。最后,您重新启动pc。现在,是否可以查看以前运行的每个函数使用的时间和内存?正如mathworks的回答所建议的,获取此信息的机会是有限的。我已经给了你一些工具,然后就取决于你如何实现它。我想是时候开始登录了。而且,你甚至没有告诉我你需要什么信息。峰值内存分配,一些经常调用的函数的内存分配。。。?不过,你是否真的认为你可以运行一个程序,重新启动你的电脑,然后以某种神奇的方式检索所请求的数据。很明显,您需要以某种方式记录它。需要保存请求的信息。AliBodaghi没有意识到可以保存配置文件结果。这里有一个注释: