使用 Lauterbach Trace 查看函数运行时间图
Viewing graphs of function runtimes with Lauterbach Trace
我正在调试一个 long-运行 方法在死前被频繁调用的崩溃。我主要担心的是难以确定嵌套 and/or 递归调用的位置。
Trace->Chart->Symbols window 显示给定时间哪个函数是 运行 的图形,对于以下调用看起来像这样:
display
|
drawChildren
/ \
drawTitle drawImage
| |
display display
| |
drawChildren drawChildren
display | _ _ _ _ _ _
drawChildren | |_ | |_| | _ | |_| | _|
drawTitle | |_| |_| | | | |
drawImage | |_| |_|
我想要的是更类似于火焰图的东西,其中每次调用的持续时间一目了然,嵌套调用更容易发现:
display______________________________
drawChildren_______________________
drawTitle_______ drawImage_______
display_______ display_______
drawChildren drawChildren
我试过查看列表视图,但我发现在我们有问题的代码中导航调用和迭代的数量很麻烦。我知道图表视图可以排序,但有什么方法可以让数据显示不同的视图?
我想最符合您需要的命令是
- Trace.Chart.Nesting
- Trace.ListNesting
您不会在菜单中找到此命令。您必须在 TRACE32 应用程序底部的命令行中键入它们 window(在 B::
后面)或使用命令行下方的软键按钮来查找这些命令。
请注意,您可以使用“/Track”选项将跟踪 windows 彼此同步。
我正在调试一个 long-运行 方法在死前被频繁调用的崩溃。我主要担心的是难以确定嵌套 and/or 递归调用的位置。
Trace->Chart->Symbols window 显示给定时间哪个函数是 运行 的图形,对于以下调用看起来像这样:
display
|
drawChildren
/ \
drawTitle drawImage
| |
display display
| |
drawChildren drawChildren
display | _ _ _ _ _ _
drawChildren | |_ | |_| | _ | |_| | _|
drawTitle | |_| |_| | | | |
drawImage | |_| |_|
我想要的是更类似于火焰图的东西,其中每次调用的持续时间一目了然,嵌套调用更容易发现:
display______________________________
drawChildren_______________________
drawTitle_______ drawImage_______
display_______ display_______
drawChildren drawChildren
我试过查看列表视图,但我发现在我们有问题的代码中导航调用和迭代的数量很麻烦。我知道图表视图可以排序,但有什么方法可以让数据显示不同的视图?
我想最符合您需要的命令是
- Trace.Chart.Nesting
- Trace.ListNesting
您不会在菜单中找到此命令。您必须在 TRACE32 应用程序底部的命令行中键入它们 window(在 B::
后面)或使用命令行下方的软键按钮来查找这些命令。
请注意,您可以使用“/Track”选项将跟踪 windows 彼此同步。