[发明专利]剖析数据可视化无效
申请号: | 201380016591.5 | 申请日: | 2013-03-06 |
公开(公告)号: | CN104205062A | 公开(公告)日: | 2014-12-10 |
发明(设计)人: | M·C·范宁;C·厄冈;A·R·斯特兰德 | 申请(专利权)人: | 微软公司 |
主分类号: | G06F11/32 | 分类号: | G06F11/32 |
代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 顾嘉运 |
地址: | 美国华*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 剖析 数据 可视化 | ||
背景
剖析使得对程序行为的检查能够聚焦性能调整。剖析器是根据在程序执行期间收集的信息来生成程序剖析的自动化工具。剖析捕捉程序的行为特性。可从剖析标识程序的一个或多个部分作为优化的候选项。例如,剖析可以指示在执行特定的函数上花费了过量的时间。换言之,剖析有助于理解程序行为,以允许集中优化努力。剖析通常基于它们的收集数据的方法等来分类。
存在两种不同类型的收集剖析数据的方法,即检测(instrumentation)和采样。在检测方法中,向程序添加在执行期间收集信息的代码。此处,被添加的代码是在程序执行时测量程序行为的工具。例如,可测量函数调用的频率和持续时间。在采样方法中,使用操作系统功能周期性地停止正在执行的程序并对该程序采样以确定执行的当前状态。因此,可以注意到,程序花费20%的时间执行特定的代码点。因此,采样方法提供统计近似,而非确切的数据。
剖析数据通常被呈现为分解程序执行的调用树(也称为调用图)。例如,调用树可示出在程序中被遍历的函数执行路径。调用树的根节点可指向程序的入口点,并且树中的每个其他节点可标识被调用的函数以及性能数据,诸如被调用函数的执行时间。节点之间的边可表示函数调用,并且圈可指示递归调用。调用树可由开发者来分析,以标识程序热点,诸如占用一大部分执行时间的函数等。
概述
下面呈现了简化的发明内容,以便提供对所公开主题的某些方面的基本概念。本发明内容不是广泛性的概观。它并不旨在标识关键/重要元素,也不旨在划定所要求保护主题的范围。其唯一的目的是要以简化形式给出一些概念以为稍后给出的更加具体的说明之序。
简言之,本发明涉及剖析数据的可视化。可以呈现一组一个或多个可视化以便利于使用要么实时要么历史剖析数据的程序性能分析。根据一个方面,可以呈现提供了不同类型的剖析数据的视图的多个相关的可视化。根据另一方面,一组可视化可以相对于逻辑分组的剖析数据操作以允许对程序执行的有意义的分析。在此,剖析数据可以被归结为例如基于组织方案来传达关于程序或子系统以及其他内容的高级语义函数的信息。还提供了机制以允许记录并回放剖析数据并控制其粒度或范围。而且,可视化可以提供基于指定的性能目标的反馈。
为实现上述及相关目的,在此结合以下描述和附图描述了所要求保护主题的某些说明性方面。这些方面指示可实践本主题的各种方式,它们均落在所要求保护主题的范围之内。当结合附图阅读以下详细描述时,本发明的其他优点和新颖特征将变得显而易见。
附图简述
图1是可视化系统的框图。
图2是代表性可视化引擎的框图。
图3是一组剖析数据的可视化的示例性屏幕截图。
图4是一组剖析数据的可视化的示例性屏幕截图。
图5是剖析数据的报告可视化的示例性屏幕截图。
图6是两个剖析数据的图表可视化的示例性屏幕截图。
图7是剖析数据的表格可视化的示例性屏幕截图。
图8是剖析数据的图表可视化的示例性屏幕截图。
图9是剖析数据的图表可视化的两个示例性屏幕截图。
图10是包括两个图表的剖析数据的可视化的示例性屏幕截图。
图11是示例性的程序用户界面的屏幕截图。
图12是程序剖析系统的框图。
图13是程序剖析系统的框图。
图14是代表性数据收集组件的框图。
图15示出用于开始/停止事件对的数据收集。
图16示出用于栈样本的数据收集。
图17是程序剖析的方法的流程图。
图18是分组剖析数据的方法的流程图。
图19是可视化剖析数据的方法的流程图。
图20是示出用于本公开各方面的合适的操作环境的示意性框图。
详细描述
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软公司;,未经微软公司;许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201380016591.5/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置