MATLAB社区

MATLAB,社区和更多

加快你的概括

我敢打赌,使用Matlab Profiler的大多数人通过Profiler UI的顶部的小“运行此代码”框运行代码。当您执行此此操作时,概况仅适用于该函数调用,并立即返回数据。这对于测试脚本或函数来说很好,但是当您为GUI函数执行此操作时,您只会配置GUI的设置。除非它负载需要很长时间,否则这通常不像分析与GUI相关的回调一样有用。

为了配置GUI的回调,您需要在使用命令之前从命令行从命令行开始探查器:

轮廓

探查器运行后,您可以与GUI进行交互以运行其回调。然后,当您准备停止分析并查看结果时,执行命令:

轮廓查看器

在以下示例中,我使用指南的“GUI与轴和菜单”模板创建了一个新的GUI。

带有坐标轴和菜单的GUI

然后我从桌面->分析器菜单中打开分析器。你可以看到,当我运行profile_gui“直接在Profiler中函数,列出了建立GUI所涉及的所有函数调用。特别是在顶部是指南的辅助功能gui_mainfcn.和我的功能profile_gui

Profiler one Gui创作

整个过程大约需要1/4秒,所以它可能不值得优化。相反,让我们来看看“更新”按钮的回调时会发生什么。要做到这一点,我键入了“剖面上“然后启动GUI。然后我按下了几次按钮,然后按下了“概要文件查看器。“从这个观点来看,我们可以看到profile_guigui_mainfcn.还有我的按钮1_callback.并且一些函数通过回调调用。根据“呼叫”列,您可以看到我按下按钮7次。有趣的是,您可以看到主要功能称为12次。这是因为指南GUI呼叫其各种回调和设置例程。

轮询结果回调后

从最上面的Profiler页面,我们可以进入回调函数本身。从折线图中我们可以看出,尽管它调用了酒吧只有一次,它是最长的命令运行。下一个最长的命令是冲浪但在电话那栏里,你可以看到我查了四遍。

轮询结果回调后

在分析器屏幕的底部,我们可以通过时间或呼叫数查看代码,查看代码顶部覆盖的相同信息。第一屏幕捕获是由相对时间量突出显示的代码,第二个屏幕捕获是相对号码呼叫的第二个代码。

按时间划分
Profile结果由呼叫数决定

如果我的代码更长时间,我会使用这些信息来提高其性能。例如,如果证明这一点酒吧很多次,我可能会缓存结果(因为数据没有改变)。

|

评论

要发表评论,请点击在这里登录您的MathWorks帐户或创建新的。