Profile_history分析最新的分析会话,并在图形时间轴中显示函数调用的时间和持续时间。函数标签和时间轴是可点击的,链接到各自的详细分析报告(内置的Matlab分析器)。
profile_history(profData)显示之前通过profData=profile('info')命令存储的特定分析会话的时间轴。
profile_history(initialDetail)或profile_history(profData,initialDetail)显示时间轴,显示指定数量函数的初始详细级别(默认initialDetail=15)。细节级别可以交互地改变,使用一个滑块在底部的数字。
示例用法:
配置文件;myProgram ();profile_history
配置文件;myProgram ();profData =概要文件(“信息”);profile_history (profData)
profile_history (20);
profile_history (profData 15);
技术描述:
http://UndocumentedMatlab.com/blog/function-call-timeline-profiling
注意1:
Profile_history为内置概要文件使用包装器函数。M,位于@char子文件夹中。如果出于某种原因,您在运行分析器时看到了问题,只需删除@char文件夹。为了能够在删除@char文件夹后使用profile_history,在配置文件时添加-timestamp参数:
概要文件的时间戳;myProgram ();profile_history
(当@char存在时,不需要添加-timestamp参数)
注意2:
该实用程序依赖于未记录和不支持的分析器时间戳历史功能,如金宝apphttp://UndocumentedMatlab.com/blog/undocumented-profiler-options-part-3#detailed.
它工作在所有最近的Matlab版本(inc. R2014a),但可能停止工作在任何未来的Matlab版本没有事先通知。
错误和建议:
请发送给Yair Altman (altmany at gmail dot com)
实验后奥特曼(2021)。Profile_history -显示图形配置时间轴数据(//www.tatmou.com/matlabcentral/fileexchange/46976-profile_history-display-graphical-profiling-timeline-data), MATLAB中央文件交换。检索.
我刚刚上传了一个新版本,它包含了显示细节级别的编程和交互控制(默认=前15个函数,按总时间排序)。
享受吧!
伙计们,我想在细节上增加更多的控制。与此同时,尝试取消图底部的一些复选框,使其不那么混乱,并/或使用图的缩放和pan特性来探索分析时间轴的子集。
如前所述,将在适当的时候添加使探索更容易的额外功能。
我同意Dan的观点,我希望用它来分析一个我不熟悉的大型代码库,但是图变得非常拥挤,如果你试图放大,光标会变得非常紧张。在这个用例中,我根本不关心时间,只是试图得到一个函数堆栈流的可视化表示,也许有一个选项可以让它在这个用例中更好地工作?
实验后,
我想看到的一件事是一种修剪显示的轮廓深度的方法。我发现,如果我试图在任何包含适度复杂GUI的函数上使用配置文件历史记录,它会在显示的模块数量上陷入困境。否则,伟大的工作。