MATLAB减慢了长时间的调试会话

时间:2011-10-12 15:50:53

标签: matlab

我注意到如果我长时间处于调试模式(例如3小时),MATLAB(Windows 7上的R2011b,64位)往往会减慢速度。我不记得在先前版本的MATLAB上发生了这种情况。

减速很小,但足以影响我的工作效率(有时MATLAB需要等待最多1秒才能在命令行或编辑器上输入)。

我通常在调试模式上花费数小时(例如在停止键盘声明后)在此模式下编写完整项目。我发现在调试模式上工作很方便有机地增加我的代码,同时在执行时间检查我的代码。

奇怪的是我的机器有16 GB的RAM,并且在调试模式下所有工作空间的总大小通常小于4 GB。我没有在后台运行任何其他大型进程,我的系统报告~8GB的可用RAM。

另外,遗憾的是MATLAB不允许我从调试模式调用pack;它抱怨道:

Warning: PACK can only be used from the MATLAB command line. 

重启MATLAB,重新启动系统以及在不同的日子里,我重现了这种行为。有了这个,我的问题是:

  • 有没有人注意到这个?如果不退出调试模式,有什么办法可以防止这种减速吗?
  • Mathworks是否有任何技术说明或声明可以解决此问题?

如果重要,我的代码位于网络驱动器上,因此我在startup.m文件中添加了以下内容,should alleviate会对其产生的性能产生任何影响:

system_dependent('RemoteCWDPolicy', 'None');
system_dependent('RemotePathPolicy', 'None');
system_dependent('DirChangeHandleWarn','Never');

2 个答案:

答案 0 :(得分:1)

我遇到过类似的问题。问题最终是Mathworks改变了Matlab缓存文件的方式。对于某些用户,它现在将数据存储在环境变量定义的TMP文件夹中。此文件夹正在被反病毒扫描并导致很多性能问题。当然,IT不会让我们从扫描中排除TMP文件夹。因此,我们在启动脚本中添加了一行,将TMP的环境变量更改为排除文件夹中的其他位置。

您不必担心更改变量或弄乱其他程序。当应用程序启动时,它们会将环境变量复制到它们自己的本地实例中。对它们所做的任何更改只会更改这些变量的本地副本,而不会更改系统副本。

这是您需要的功能。

setenv('TEMP','C:\ TEMP');

我不确定它是TMP还是TEMP。检查您的环境变量以确定。

答案 1 :(得分:-1)

我在linux 10,Windows 7(32位)上使用MATLAB R2011。 在命令窗口中打印简单变量时,我经历了MATLAB减速。 它转向我的编辑器中加载了一个.m文件。 这是一个10000行的大文件。这些行是应该保存为mat文件的简单数据。当我关闭此文件时,编辑器恢复到正常速度。