CN105765528B - 具有可配置原点定义的应用执行路径跟踪的方法、系统和介质 - Google Patents
具有可配置原点定义的应用执行路径跟踪的方法、系统和介质 Download PDFInfo
- Publication number
- CN105765528B CN105765528B CN201480062439.5A CN201480062439A CN105765528B CN 105765528 B CN105765528 B CN 105765528B CN 201480062439 A CN201480062439 A CN 201480062439A CN 105765528 B CN105765528 B CN 105765528B
- Authority
- CN
- China
- Prior art keywords
- execution route
- execution
- function
- tracker
- trace data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3636—Software debugging by tracing the execution of the program
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0709—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/079—Root cause analysis, i.e. error or fault diagnosis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/302—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3065—Monitoring arrangements determined by the means or processing involved in reporting the monitored data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3476—Data logging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3495—Performance evaluation by tracing or monitoring for systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/206—Drawing of charts or graphs
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Human Computer Interaction (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Debugging And Monitoring (AREA)
Abstract
跟踪系统可定义用于整合和比较被跟踪应用内的踪迹路径的原点。跟踪器可定义可被传递遍历跟踪路径的标识符,且该标识符可被定义为捕捉踪迹的具体实例或实例组。踪迹可被整合为程序流的图形表示。标识符可跨各种边界传递,包括函数边界、库边界、应用边界、设备边界。分析系统可整合或聚集具有相同标识符的踪迹结果,并可用图形呈现这种数据或使用所标识的数据集提供统计数据。
Description
相关申请的交叉引用
本申请要求于2013年11月13日提交的题为“Application Execution PathTracing with Configurable Origin Definition(具有可配置原点定义的应用执行路径跟踪)”的美国专利申请序列号61/903,775、于2013年11月13日提交的题为“UserInterface for Selecting Tracing Origins for Aggregating Classes of Trace Data(用于选择用于聚集跟踪数据类的跟踪原点的用户界面)”的美国专利申请序列号61/903,781、和于2013年11月13日提交的题为“Tracing Origin Rules for Minimizing TraceData Collection by Sampling(用于通过采样来最小化跟踪数据收集的跟踪原点规则)”的美国专利申请序列号61/903,786的优先权和权益,藉此通过援引将其全部公开和教导纳入于此。
背景
跟踪是用于监视应用执行时该应用的操作(且有时候还监视性能)的机制。当应用在生产或人工加载下执行时,应用可执行穿过可执行代码的许多不同序列或路径,并可生成大量的跟踪器数据。
概述
跟踪系统可定义用于整合和比较被跟踪应用内的踪迹路径的原点。跟踪器可定义可被传递遍历跟踪路径的标识符,且该标识符可被定义为捕捉踪迹的具体实例或实例组。踪迹可被整合为程序流的图形表示。标识符可跨各种边界传递,包括函数边界、库边界、应用边界、设备边界。分析系统可整合或聚集具有相同标识符的踪迹结果,并可用图形呈现这种数据或使用所标识的数据集提供统计数据。
用户界面可选择应用的结构的图形表示内的一位置以标识跟踪操作的原点。原点可定义标识符可被插入到被跟踪应用内的位置,且标识符可与在特定条件下收集的跟踪器数据相关联。规则集可定义用于跟踪应用的特定条件,且某些规则可包含用于指派标识符的逻辑。用户界面可以是应用的流的图形表示,且用户可从预定义选项集合中进行选择来定义可如何实现跟踪。
跟踪系统可向跟踪路径添加标识符以标识哪些操作要收集数据,以使得其中存在标识符的那些跟踪操作可收集数据而不具有标识符的那些操作可收集受限的数据或不收集数据。标识符可使用逻辑来添加,该逻辑可引起跟踪系统采样应用的操作,而不是跟踪所有操作。采样算法可以是通用采样算法,其中特定百分比的操作可被跟踪,或可被定向为以比其它执行路径更高的速率来跟踪某些执行路径。在一些情况下,采样算法可通过分析先前的跟踪器数据来定义以标识对于更高等级跟踪而言感兴趣的那些执行路径以及可适用较低采样速率的其它执行路径。
提供本概述以便以简化的形式介绍以下在详细描述中进一步描述的一些概念。本概述并不旨在标识所要求保护主题的关键特征或必要特征,也不旨在用于限制所要求保护主题的范围。
附图简述
在附图中,
图1是示出其中执行路径跟踪被使能和未被使能的拓扑图的实施例的图示。
图2是示出具有可使用执行路径跟踪来跟踪的设备的网络环境的实施例的图示。
图3是示出用于创建针对执行路径跟踪的规则的示例用户界面的实施例的图示。
图4是示出用于用规则进行跟踪的方法的实施例的流程图示。
图5是示出用于从拓扑图可视化创建规则的方法的实施例的流程图例示。
图6是示出用于采样执行路径踪迹的方法的实施例的流程图示。
详细描述
具有可配置原点定义的应用执行路径跟踪
一种计算机软件跟踪系统可被配置成跟踪个体执行路径。原点可定义应用内的一位置,在该位置处可定义用于跟踪执行路径的标识符集合。在原点处,跟踪器可创建标识符,该标识符可被跟踪器传递贯穿执行路径。跟踪器可创建具有公共标识符的跟踪器数据集,根据该跟踪器数据集可进行对跟踪器数据的统计、可视化和其它分析。
标识符可由可在应用内的一点处评估的规则集合来定义。在一些实施例中,规则集合可针对不同的函数、库、模块、可重用软件组件、接口、事件或其它情形来定义。在被评估时,标识符可用唯一标识符或针对可表示跟踪路径的类或组的标识符来对跟踪路径分类。
在一个用例中,标识符可被添加到跟踪数据以输入到web服务。在该示例用例中,web服务器可跨网络接口对针对网页或其它数据的请求做出响应。跟踪器可被实现以采集每个函数在web服务器应用内执行时的性能和操作数据。规则集合可在传入的web请求处被评估以标识带有针对特定用户的会话标识符的每个传入请求。当跟踪器操作时,会话标识符可与每个数据项相关联。后续踪迹数据分析器可聚集带有每个会话标识符的踪迹数据以独立地显示每个会话的统计数据。
在示例用例中,规则集合可被修改来创建针对特定输入类的标识符,诸如创建针对特定网页请求的标识符。该网页请求的每个实例可具有相同标识符,以使得后续踪迹数据分析器可聚集针对每个特定网页的所有请求的踪迹数据。针对web服务器对各网页做出响应的方式,可生成统计、可视化或其它输出。
用于选择用于聚集踪迹数据的类的跟踪原点的用户界面
用户界面可显示可从中选择跟踪原点的应用结构的图形拓扑。拓扑可显示用户可从中选择的应用的函数、库、模块、或其它组件。在选择一组件后,用户可以能够定义用于聚集可从所选组件流动的踪迹数据的逻辑。
用户界面可根据通过观察应用的操作所采集的踪迹数据来图解应用的拓扑。该图解可将应用组件显示为图形中的节点,而图形的边则图解组件间的连接。在一些情况下,这种图解可包括性能数据的表示。
用户可从图中选择组件,随后能够定义踪迹数据可如何被聚集以用于下游操作。在原点处,跟踪器可创建标识符,该标识符可被沿着执行路径传递。后续分析可将具有共同标记的踪迹数据聚集为统计数据、图形表示或其它分析。
用户可以能够从函数作为选项接收的输入值集合中进行选择以用于聚集踪迹数据。输入值集合可由跟踪器随时间观察,随后排序并列出给用户作为用于跟踪的可能选项。在一些情况下,用户可以能够选择个体输入值、输入值组、或其它,每个输入值用于跟踪。后续跟踪数据可根据所选的选项被聚集并呈现给用户。
可向用户呈现用于对下游踪迹数据进行分类和聚集的其它选项。这些选项可通过分析先前采集的踪迹数据来生成,以对应用的下游行为分类。分类可标识其中例如额外的错误发生或其中其它状况可能存在的那些执行路径或条件。这些选项可允许用户配置跟踪器来收集感兴趣的踪迹数据,同时可能不跟踪可产生很少或不产生感兴趣的数据的条件。
用于通过采样来最小化踪迹数据收集的跟踪原点规则
跟踪系统可具有用于标记或标识踪迹数据集的规则,且这些规则可定义用于跟踪的采样机制。通过对应用的操作进行采样,跟踪器的开销影响可在生产应用中被最小化。基于在针对原点的规则集中定义的条件集,采样可在不同级别应用。规则可定义用于低频采样的条件,诸如10、100或1000中采样一次,或用于较高采样频率的其它条件。
采样可选择性地标识要跟踪的执行序列以及跟随那些执行序列来完成。与独立采样来自应用内的个体函数的踪迹数据相比,这样的采样可更准确地反映应用中的操作。
采样踪迹数据可在其中应用的许多操作可能是重复性的生产情形中有用。被采样的踪迹数据对于标识应用的操作中的趋势可能是有用的。在被采样的数据的情况下这些趋势可与完整数据集的情况下以近乎相同的统计准确度被标识,然而,被采样的数据消耗更少的跟踪器开销、踪迹数据存储以及分析。
在一些实施例中,随着踪迹数据变得更加稳定,采样速率可随时间调整。对于运转良好的函数,采样频率可被降低,而对具有不良可靠性的函数可被增加。在一些实施例中,采样频率可在可检测到错误或其它异常时被增加。这种增加的采样频率可提供更准确的数据来标识其中错误或异常发生的条件。
贯穿本说明书和权利要求书,术语“组件”被用于定义可被合并到应用中的一组可重用代码。组件可被知晓为“模块”、“库”、“子例程”或某种其它概念。出于本说明书和权利要求书的目的,这些术语被认为是同义词。
“组件”可以是按照多个应用可访问代码的方式布置的代码,即便这些应用彼此之间可能没有连接。“组件”可以是按照多个应用可访问代码的方式布置的代码,即便这些应用彼此之间可能没有连接。在一些情况下,组件可在大应用的范围内重用,而在其它情况下,组件可被共享至可在不相干且不连接的应用中使用该组件的其它应用开发者。
许多编程语言和范例具有“组件”或库的概念,其中组件可有被定义的接口,通过该接口应用可调用并使用该组件。一些范例可允许程序员按静态方式合并组件,以使得组件代码在该应用被编写并部署之后不进一步改变。一些范例可允许动态库,其可在运行时或者甚至在执行开始之后被加载和调用。动态库可在该应用可被分发之后被更新和改变,而调用库或组件的方式可保持不变。
组件可以源代码、中间代码、可执行代码或以某种其它形式分发。在一些情况下,组件可以是可通过应用编程接口调用的服务。
贯穿本说明书和权利要求书,术语“组件”可被应用于单一可重用函数。这种函数可作为库、模块、或其它代码集的一部分被分发,并可反映可被分发的可重用代码的最小元素。在本说明书和权利要求书中所指的单一“组件”可以是个体应用编程接口调用或可调用子例程或函数,以及模块、库、或多个可调用函数、应用编程接口调用、或其它较小元素的其它聚集。
在本说明书和权利要求书中,术语“剖析器”、“跟踪器”和“探测工具”可以互换地使用。这些术语指代可在应用被执行时采集数据的任何机制。在经典定义中,“探测工具”可指代可被插入可执行代码并从而改变该可执行代码的生成方法存根(stub)、挂钩(hook)或其他数据采集机制,而“剖析器”或“跟踪器”可经典地指代不可改变可执行代码的数据采集机制。对这些术语及其派生词中的任一者的使用都可蕴含或暗示彼此。例如,使用“跟踪器”的数据收集可使用“跟踪器”的经典意义中的非接触式数据收集以及用其中可执行代码可被改变的“探测工具”的经典意义的数据收集来执行。类似地,通过“探测工具”收集的数据可包括使用非接触式数据收集机制的数据收集。
此外,通过“剖析”、“跟踪”和“探测工具”收集的数据可包括可被收集的任何类型的数据,包括诸如处理时间、吞吐量、性能计数器等等之类的与性能有关的数据。收集到的数据可包括函数名、传递的参数、存储器对象名和内容、传递的消息、消息内容、寄存器设置、寄存器内容、差错标志、中断、或与正被跟踪的应用有关的任何其他参数或其他可收集的数据。被收集的数据还可包括高速缓存未命中、垃圾收集操作、存储器分配调用、页面未命中和其它参数。
贯穿本说明书和权利要求书,术语“执行环境”可被用于指代用于执行应用的任何类型的支持软件。执行环境的一示例是操作系统。在一些举例说明中,“执行环境”可被示为与操作系统分开。这可能是为了例示出为应用提供各支持功能的虚拟机,诸如进程虚拟机。在其他实施例中,虚拟机可以是可包括其自己的内部操作系统并可模拟整个计算机系统的系统虚拟机。贯穿本说明书和权利要求书,术语“执行环境”包括操作系统和可具有或可不具有可容易标识的“虚拟机”或其他支持软件的其他系统。
贯穿本说明书和权利要求书,术语应用摂被用来指代可执行期望功能的软件和硬件产品的任何组合。在一些情况下,应用可以是用硬件平台操作的单一软件程序。一些应用可使用多个软件组件,每个软件组件可以是用不同语言编写的或可在不同硬件或软件执行环境内执行。在一些情况下,这些应用可跨多个设备分散并且可使用可由网络或其它通信系统连接的软件和硬件组件。
贯穿本说明书,贯穿对附图的描述,相同的附图标记表示相同的元素。
在本说明书和权利要求书中,对“处理器”的引用包括多个处理器。在某些情况中,可由“一处理器”执行的过程可实际上由同一设备上或不同设备上的多个处理器执行。出于本说明书和权利要求书的目的,对“处理器”的任何引用应包括可能位于同一设备上或不同设备上的多个处理器,除非另外明确指定。
当元素被称为被“相连接”或“相耦合”时,这些元素可被直接连接或耦合在一起,或者也可存在一个或多个中间元素。相反,当元素被称为被“直接连接”或“直接耦合”时,不存在中间元素。
本主题可被体现为设备、系统、方法、和/或计算机程序产品。因此,本主题的部分或全部可以用硬件和/或软件(包括固件、常驻软件、微码、状态机、门阵列等)来具体化。此外,本主题可以采用计算机可使用或计算机可读存储介质上的计算机程序产品的形式,介质中收录了供指令执行系统使用或结合指令执行系统一起使用的计算机可使用或计算机可读的程序代码。在本文档的上下文中,计算机可使用或计算机可读介质可以是可包含、储存、通信、传播、或传输程序以供指令执行系统、装置或设备使用或结合指令执行系统、装置或设备一起使用的任何介质。
计算机可使用或计算机可读介质可以是,例如但不限于,电、磁、光、电磁、红外、或半导体系统、装置、设备或传播介质。作为示例而非限制,计算机可读介质可包括计算机存储介质和通信介质。
计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息的任何方法或技术来实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括,但不限于,RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁带盒、磁带、磁盘存储或其他磁性存储设备、或能用于存储所需信息且可以由指令执行系统访问的任何其他介质。注意,计算机可使用或计算机可读介质可以是其上打印有程序的纸张或另一合适的介质,因为程序可以经由例如对纸张或其他介质的光学扫描而电子地捕获,随后如有必要被编译、翻译,或以其他合适的方式处理,并随后存储在计算机存储器中。
当本主题在计算机可执行指令的一般上下文中具体化时,该实施例可包括由一个或多个系统、计算机、或其他设备执行的程序模块。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。通常,程序模块的功能可在各个实施例中按需进行组合或分布。
图1是显示在对执行路径分类之前和之后的拓扑图的实施例100的图示。通用拓扑图102可显示应用的组件和其连接,其中每个连接可以是从跟踪器数据观察到的连接。拓扑图104可显示在应用执行路径跟踪之后的连接。
执行路径跟踪可在应用内的原点位置处开始,并可为执行路径创建标识符。标识符可沿着执行路径被传递,以使得跟踪器数据可用执行路径来标识。带有相同执行路径标识符的跟踪数据可被编组并被显示在拓扑图上。
执行路径标识符可以是针对执行路径的每个实例的唯一标识符。在这种实施例中,穿过应用代码的每个穿越可具有不同的标识符,并且从而每个路径可被独立地存储、分析和可视化。
执行路径标识符可具有针对执行路径的具体类的标识符。在这样的实施例中,来自给定执行路径的踪迹数据可作为组被整合和分析。
执行路径跟踪可允许应用的某些部分被观察。在应用内的原点位置处,跟踪器可创建针对执行路径的标识符,随后将标识符沿执行路径传递,以便沿路收集跟踪器数据。跟踪器数据可用标识符来标记,随后具有相同标识符的数据可作为组被分析。
在一个用例中,特定执行路径可被标识为在特定函数处开始。当跟踪该函数时,跟踪器规则集合可被评估以确定当前执行路径是否满足感兴趣的执行路径的定义。跟踪器可创建针对该执行路径的标识符,随后开始跟踪该函数。随着执行继续,标识符可被传递至执行路径中的后续函数。在每个下游函数处,跟踪器可检测标识符的存在,随后跟踪下游函数并标记数据。所得到的数据可反映仅感兴趣的执行路径的踪迹,而没有其它踪迹数据。这样的所得到的数据可被分析、可视化或另行处理以给出开发者对该特定执行路径的详细查看。
在另一使用场景中,应用可在若干不同模式中工作,但是可使用重叠的函数集来递送这些模式中的每个模式。可通过标识模式可源起其中的函数来跟踪该应用,随后针对每个执行路径创建标识符。跟踪器可在原点函数处做出评估来确定执行路径,随后标记每个执行路径。
在这种场景的一个示例中,网站服务器应用可对针对各个网页的请求做出响应。每个网页可具有不同的功能性,但是可一般地使用相同下游函数中的许多下游函数。原点函数可以是从其接收网页请求的函数,且跟踪器可用被请求的网页的标记来标记每个执行路径。在用这种配置执行跟踪器之后,每个网页的跟踪器数据可被容易地标识和研究。
实施例100解说了当执行路径标记被使用时的拓扑中的一个这种改变。图102可解说应用的完整拓扑图,其中每个节点可表示一函数或可执行代码块,且每个边可表示函数间的连接或程序流。
节点106连接至节点108,节点108分叉到节点110和112。节点110可在自身上循环,且可分叉到节点113和118。节点113可分叉到节点114和116,且节点114可返回至节点113。节点112可流至节点118,节点118可在自身上循环,随后分叉到节点120和122。节点122可继续到节点116。
图102的拓扑可反映应用的完整拓扑。然而,应用可具有三个主要的函数,其可在节点108处源起。当执行路径跟踪被部署在节点108处时,节点108的每个模式可开始新的执行路径,该执行路径可使用针对相应执行路径的标识符来跟踪。
在图104中,拓扑图可被显示为具有执行路径。该图可开始于节点106。因为节点108是原点节点且可在三种不同模式中操作,所以针对这三种模式的执行路径可被标记并被显示。执行路径124、126和128可解说这些模式。
执行路径124在第一条件中包含节点108,随后是节点110、113和114。执行路径126在第二条件中包含节点108,随后是节点110、118和122。最后,执行路径128在第三条件中包含节点108,随后是节点112、118和120。
图104可用比图102更易理解的方式解说应用的拓扑。图102可解说各软件元素之间的所有连接,而图104解说应用在其操作模式中的执行流。这种图解对于可视化应用的实际操作可能更有用。
图2是示出在应用执行时可通过使用跟踪器规则来收集数据的组件的实施例200的图示,该跟踪器规则可改变跟踪器行为,包括添加执行路径标识符。
图2的示图例示出了系统的功能组件。在一些情况下,组件可以是硬件组件、软件组件、或者硬件和软件的组合。一些组件可以是应用级软件,而其他组件可以是执行环境级组件。在一些情况下,一个组件到另一组件的连接可以是紧密连接,其中两个或更多个组件在单个硬件平台上操作。在其他情况下,连接可通过跨长距离的网络连接来进行。每个实施例都可使用不同的硬件、软件、以及互连架构来实现所描述的功能。
实施例200例示出可具有硬件平台204和各种软件组件的设备202。所例示出的设备202表示常规计算设备,但是其它实施例可具有不同配置、架构、或组件。
在许多实施例中,设备202可以是服务器计算机。在一些实施例中,设备202仍然还可以是台式计算机、膝上型计算机、上网本计算机、图形输入板或平板计算机、无线手机、蜂窝电话、游戏控制台或任何其他类型的计算设备。在一些实施例中,设备202可在计算设备群集上实现,计算设备群集可以是一组物理或虚拟机器。
硬件平台204可以包括处理器208、随机存取存储器210、以及非易失性存储212。硬件平台204还可包括用户接口214和网络接口216。
随机存取存储器210可以是包含可由处理器208快速存取的数据对象和可执行代码的存储。在许多实施例中,随机存取存储器210可具有将存储器210连接到处理器208的高速总线。
非易失性存储212可以是在关闭设备202之后持久保持的存储。非易失性存储212可以是任何类型的存储设备,包括硬盘、固态存储器设备、磁带盒、光学存储、或其他类型的存储。非易失性存储212可以是只读的或能够读/写。在一些实施例中,非易失性存储212可以是基于云的、网络存储、或可通过网络连接访问的其他存储。
用户接口214可以是能够显示输出以及接收来自用户的输入的任何类型的硬件。在许多情况下,输出显示器可以是图形显示监视器,但是输出设备可包括光和其他视觉输出、音频输出、动力致动器输出、以及其他输出设备。常规输入设备可包括键盘和定点设备,诸如鼠标、指示笔、跟踪球、或其他定点设备。其他输入设备可包括各种传感器,包括生物测定输入设备、音频和视频输入设备、以及其他传感器。
网络接口216可以是到另一计算机的任何类型的连接。在许多实施例中,网络接口216可以是有线以太网连接。其他实施例可包括基于各种通信协议的有线或无线连接。
软件组件206可包括操作系统218,各种软件组件和服务可在该操作系统218上操作。一些实施例可直接在操作系统218上执行应用,而其它实施例可使用执行环境224,其可以是虚拟机或其它抽象。当应用在操作系统218上执行时,跟踪器220可具有一些操作系统连接。跟踪器220可用规则集合222执行,该规则集合可控制跟踪器行为。
当应用在执行环境224中执行时,应用226可与跟踪器228一起操作,该跟踪器可具有可控制跟踪器行为的规则集合230。
规则222或230可定义跟踪器的设置或选项,且可标识用于改变跟踪器设置的条件。在一些情况下,规则可增加或减少被收集的数据的量。一些这样的规则可标识要收集的数据的具体类型、要捕捉的变量值、可被收集的性能或操作数据、或其它行为改变。
规则还可标识用于跟踪的执行路径。执行路径可以是可在顺序上彼此相关的应用操作序列。一些执行路径可以是顺序的,而其它执行路径可分叉到多个进程、线程、或可并行执行的其它执行序列。
执行路径可通过创建执行路径的标识符、随后将该标识符传递穿过该执行路径到下游函数来跟踪。用于传送这种标识符的一种机制可以是将原始函数包装在跟踪器函数中,且包装器可将该标识符作为包装器内的状态来传递。许多其它实现机制可被用来跟踪执行路径并向踪迹数据应用标识符。
网络234可连接实施例200的示例中的各种设备。在其它实施例中,所有各种函数可被实现在单一硬件平台上,而在又一些其它示例中,各种函数中的一些函数可被分布在多个硬件平台上。
踪迹数据库系统236可收集踪迹数据,执行对踪迹数据的分析,生成跟踪规则,以及提供踪迹数据的可视化。踪迹数据库系统236可在可与硬件平台204的描述类似的硬件平台238上执行。
踪迹数据库240可收集在设备202上创建的踪迹数据。踪迹数据库240可接收、存储以及处理踪迹数据以用于分析。
分析引擎242可执行对踪迹数据的统计和其它分析,包括生成踪迹数据的可视化246,诸如拓扑图形和其它可视化。
分析引擎242可帮助创建针对跟踪器的规则244。分析引擎242可标识统计数据、操作模式、或可被人类用来选择根据其可跟踪执行路径的规则的其它信息。在一些情况下,分析引擎242可包括试探法或其它机制的集合以确定用于对执行路径上执行的踪迹进行采样的条件。
规则222和230可通过采样执行路径来标识可被跟踪的执行路径。采样可不跟踪执行路径的每个实例,而是可以仅跟踪实例子集。采样对于减少跟踪器消耗的开销可以是有用的,但是仍旧可产生统计上显著的结果。
采样可基于执行路径用不同频率来应用。例如,非常稳定的执行路径可具有低采样水平,而具有宽性能可变性的执行路径可以高频率来采样。此类系统可针对可能运转不良的执行路径捕捉较大数据集而针对可能运转良好的那些执行路径捕捉较少的数据。
分析引擎242可检查踪迹数据库240来确定哪些执行路径可能运转良好而哪些执行路径可能运转不良。基于各执行路径的性能,分析引擎242可创建规则244,该规则可增加或减少对执行路径的跟踪采样。
客户端设备248可以是用户可从其查看各种可视化246并与分析引擎242、踪迹数据库240交互,以及创建规则244等的设备。客户端设备248可在可与针对硬件平台204所描述的类似的硬件平台250上操作。
客户端设备248可以是浏览器252,用户界面254可在该浏览器中显示。用户界面254可被从可访问踪迹数据库240、分析引擎242、规则244、可视化246和其它信息的web服务器提供。
图3是示出应用拓扑图302和用于选择用于执行路径跟踪的规则的机制的示例实施例300的图示。实施例300仅是用于请求来自可从其生成跟踪器规则的用户的输入的交互式机制的一个示例。
用户界面可具有应用拓扑图302,该应用拓扑图可解说应用的元素以及那些元素之间的流。每个节点可表示一应用或其它可执行组件、事件、接口、元素或其它项。
用户可以能够选择特定节点,诸如所选节点304。当节点304被选择时,用户界面306可被呈现给用户。用户界面306可向用户呈现可帮助创建用于跟踪执行路径的规则的某种信息。
用户界面306可显示函数的名称308,以及针对可能的执行路径的某些被分析的数据。在实施例300的示例中,三个不同输入值可在列310中被解说为“foo”、“bar”和“baz”。各种统计数据可为用户针对每个输入值来示出,诸如列312中的使用频率、列314中的错误、以及性能316。
针对执行路径的所建议的分类可通过分析针对给定节点先前收集的跟踪数据来确定。这种分析可尝试确定哪些变量可以是可区分不同执行路径的行为的主导因素。
用户可具有输入机制318、320和322,所述输入机制可捕捉用户的输入,用户的输入可被处理以生成跟踪器规则。在实施例300的示例中,用户可具有在低、中间和高级别跟踪之间进行选择的选项。每个实施例可以针对这种指定符具有不同的定义。在一些情况下,这些项可指代采样频率。在一些情况下,这些项可反映在可被跟踪的每个事件处收集的数据的量。
图4是示出用于利用规则来跟踪的方法的实施例400的流程图。实施例400可解说其中在跟踪可能发生的每个函数处可应用规则的系统。规则可通过添加或移除用于捕捉的参数、执行跟踪事件处的分析以及其它项来改变跟踪器行为。在一些情况下,规则可包括在跟踪期间可被评估的可执行代码。
其他实施例可使用不同的排序、更多或更少的步骤、以及不同的命名或术语来完成相似功能。在一些实施例中,各种操作或操作集合可与其他操作以同步或异步方式并行地执行。此处所选的步骤是为了以简化的形式例示出一些操作原理而被选出的。
实施例400可解说用于使用跟踪器规则来部署执行路径跟踪的一种机制。跟踪器规则可包含执行路径跟踪可在其下发生的一个或多个条件,以及用于标识执行路径的机制。当给定函数处的执行路径匹配用于执行路径跟踪的条件时,执行路径可被标识。标识符可被向下游传递到其它函数,所述其它函数可用同一标识符标识跟踪器数据,由此将轨迹数据链接到相同的执行路径。
应用的执行可在框402中开始且跟踪可在框404中开始。可以在框406中接收跟踪器规则。
要跟踪的函数可在框408中被标识。要被跟踪的函数可在应用执行已进行到该函数且该函数被跟踪器标识时被标识。
如果在框410中没有针对该函数定义规则,则在框412中跟踪器可被设置成默认规则。如果在框410中针对该函数定义了规则,则在框414中跟踪器可根据所述规则来被配置。
如果在框416中规则没有定义执行路径跟踪,则该函数可在框426中用如被配置的跟踪器来跟踪。
当在框416中规则定义了执行路径跟踪时,函数状态可在框418中被评估以将该执行路径分类。基于该分类,在框420中可检索标识符。在框422该函数可被包装在跟踪器函数中且在框424该标识符可被包括在被包装的跟踪器中。该过程可继续至框426,以跟踪该函数并采集踪迹数据。
如果在框428中针对踪迹数据定义了标识符,则在框426中通过跟踪所采集的踪迹数据可在框430中被与标识符相关联并在框432中被存储。该过程可返回至框408以继续执行,直到另一函数可被标识以用于跟踪为止。
关于可具有或可不具有被定义的跟踪器规则的下游函数,跟踪器可在框426中继续采集踪迹数据并将标识符与踪迹数据相关联。
图5是示出用于从拓扑图表示创建规则的方法的实施例500的流程图例示。实施例500可解说可由分析引擎和用户界面执行以生成可帮助用户选择用于跟踪的执行路径的有用数据的方法。
其他实施例可使用不同的排序、更多或更少的步骤、以及不同的命名或术语来完成相似功能。在一些实施例中,各种操作或操作集合可与其他操作以同步或异步方式并行地执行。此处所选的步骤是为了以简化的形式例示出一些操作原理而被选出的。
在框502,可接收踪迹数据。
被跟踪的组件的图可在框504中从踪迹数据生成,且拓扑可视化可在框506中从该图生成。
在框508中,拓扑可视化可被显示。在框510,可接收对一应用组件的选择。该选择可由查看该拓扑可视化的用户做出。
当在框512中用户希望创建新规则或更新与所选组件有关的现有规则时,具有分类选项的用户界面可在框514被呈现。
具有分类选项的用户界面可包括可由分析引擎从跟踪器数据得到的操作模式。在许多实施例中,试探法集合可被应用以建议公共因素,执行路径可根据所述公共因素被分类。这种用户界面的示例可以是实施例300的用户界面306。
在框506中用户还可以能够指定针对给定执行路径所期望的采样。
分类选项的集合可在框516中从该用户接收且规则集合可在框518中被创建。如果可在框520中选择另一组件,则该过程可返回至框508。当在框520中没有选择其它组件时,该过程可在框522中结束。
图6是示出用于利用包括采样的规则来跟踪的方法的实施例600的流程图。实施例600可解说可对特定执行路径采样的跟踪器的操作。每个被采样的执行路径可被指派一标识符。当该标识符可对于下游函数存在时,跟踪可被执行,而当该标识符不存在时,跟踪可被最小化或完全不被执行。
其他实施例可使用不同的排序、更多或更少的步骤、以及不同的命名或术语来完成相似功能。在一些实施例中,各种操作或操作集合可与其他操作以同步或异步方式并行地执行。此处所选的步骤是为了以简化的形式例示出一些操作原理而被选出的。
实施例600可在执行路径可被选择以用于采样时向执行路径指派标识符。这种系统可使用标识符作为可对下游函数执行跟踪的指示。通过仅向一执行路径子集指派标识符,跟踪可对执行路径的样本或子集执行。采样可以是用于最小化开销对应用性能的影响同时仍旧收集某些跟踪数据的一种机制。
跟踪可在框602中开始。可在框604中接收针对跟踪的规则。函数可在框606中被标识以用于跟踪。
如果在框608中该函数可以是用于执行路径跟踪的原点,则该执行路径可在框610中被分类。该执行路径的采样频率可在框612中被确定,且在框614中可关于当前执行路径是否要被跟踪来做出确定。
采样频率可定义要跟踪的执行路径的百分比或其它分数。例如,10%的采样频率可跟踪十分之一的执行路径,而剩下十分之九的执行路径不进行跟踪。
如果当前执行路径在框616中没有被选择以用于采样,则该过程可进行至框620。如果当前执行路径在框616中被选择以用于跟踪,则针对该执行路径的标识符可在框618中被确定,且跟踪器可被配置成跟踪该执行路径。该过程可继续至框620。
如果执行路径在框620中不具有标识符,则该函数在框622中可不被跟踪,且该过程可继续至框606。
当该执行路径在框620中具有标识符时,该函数可被跟踪且在框624中踪迹数据可被采集。执行路径标识符可在框626中与踪迹数据相关联且该数据可在框628中被存储。该过程可继续至框606。
对本发明的上述描述是出于图示和描述的目的而呈现的。它不旨在穷举本主题或将本主题限于所公开的精确形式,并且鉴于上述教导其他修改和变型都是可能的。选择并描述实施例来最好地解释本发明的原理及其实践应用,由此使本领域的其他技术人员能够在各种实施例和各种适于所构想的特定用途的修改中最好地利用本发明。所附权利要求书旨在被解释为包括除受现有技术所限的范围以外的其他替换实施例。
Claims (47)
1.一种在至少一个计算机处理器上执行的用于应用执行路径跟踪的方法,所述方法包括:
评估定义用于跟踪的条件的规则;
在到第一函数的第一执行路径中执行应用,所述第一函数为所述应用的一部分;
基于所述规则,将所述第一执行路径标识为满足所述条件并为所述第一执行路径指派第一标识符;
在执行所述第一函数的同时收集第一踪迹数据并将所述第一标识符与所述第一踪迹数据相关联;
执行所述应用至第二函数的第一实例并确定所述第二函数的所述第一实例是所述第一执行路径的一部分并在执行所述第二函数的所述第一实例的同时收集第二踪迹数据并将所述第一标识符与所述第二踪迹数据相关联;以及
传送所述第一踪迹数据和所述第二踪迹数据。
2.如权利要求1所述的方法,其特征在于,还包括:
执行所述应用至所述第二函数的第二实例并确定所述第二函数的所述第二实例不是所述第一执行路径的一部分且在执行所述第二函数的所述第二实例的同时不收集踪迹数据。
3.如权利要求2所述的方法,其特征在于,还包括:
用被包装的跟踪器函数包装所述第一函数并将所述第一标识符存储在所述被包装的跟踪器函数中。
4.如权利要求3所述的方法,其特征在于,还包括:
通过所述被包装的跟踪器函数的存在来确定所述第二函数的所述第一实例是所述第一执行路径的一部分。
5.如权利要求1所述的方法,其特征在于,所述规则包含对到所述第一函数的输入值的至少一个引用。
6.如权利要求5所述的方法,其特征在于,所述第一标识符包括所述输入值的至少一部分。
7.如权利要求1所述的方法,其特征在于,还包括:
接收所述第一踪迹数据和所述第二踪迹数据;
确定所述第一踪迹数据和所述第二踪迹数据包括所述第一标识符并从所述第一踪迹数据和所述第二踪迹数据生成至少一个统计数据。
8.一种用于应用执行路径跟踪的系统,包括:
至少一个处理器;
在所述至少一个处理器上执行的执行环境,所述执行环境执行第一应用;
跟踪器,所述跟踪器在所述第一应用执行的同时收集观察,所述跟踪器进一步:
评估定义用于跟踪的条件的规则;
确定所述执行已进行到第一函数;
基于所述规则,将第一执行路径标识为满足所述条件并为所述第一执行路径指派第一标识符;
在执行所述第一函数的同时收集第一踪迹数据并将所述第一标识符与所述第一踪迹数据相关联;
执行所述应用至第二函数的第一实例并确定所述第二函数的所述第一实例是所述第一执行路径的一部分并在执行所述第二函数的所述第一实例的同时收集第二踪迹数据并将所述第一标识符与所述第二踪迹数据相关联;以及
传送所述第一踪迹数据和所述第二踪迹数据。
9.如权利要求8所述的系统,其特征在于,所述规则包括对到所述第一函数的输入值的至少一个引用。
10.如权利要求9所述的系统,其特征在于,所述规则包括标识所述第一执行路径的第一条件以及标识第二执行路径的第二条件。
11.如权利要求10所述的系统,其特征在于,所述第二执行路径在所述规则内用第二标识符来标识。
12.如权利要求11所述的系统,其特征在于,所述跟踪器进一步:
当执行所述第一函数时标识所述第二执行路径并在执行所述第一函数的同时收集第三踪迹数据并将所述第二标识符与所述第三踪迹数据相关联。
13.如权利要求12所述的系统,其特征在于,进一步包括:
分析引擎,所述分析引擎:
接收所述第一踪迹数据和所述第二踪迹数据;
确定所述第一踪迹数据和所述第二踪迹数据包括第一标识符并从所述第一踪迹数据和所述第二踪迹数据生成至少一个统计数据。
14.如权利要求13所述的系统,其特征在于,进一步包括:
可视化引擎,所述可视化引擎:
接收所述第一踪迹数据和所述第二踪迹数据;
生成示出所述至少一个统计数据的可视化。
15.一种在至少一个处理器上执行的用于应用执行路径跟踪的方法,所述方法包括:
显示应用的拓扑图,所述应用包括多个组件,所述拓扑图是从通过监视所述应用以及标识踪迹数据内的所述多个组件而采集的踪迹数据生成的并包括所述多个组件的表示;
接收来自用户输入设备的第一选择,所述第一选择包括在所述拓扑图内的第一组件;
接收第二选择,所述第二选择包括用于跟踪穿过所述第一组件的执行路径的第一条件;以及
将针对所述第一组件的所述第一条件作为与所述第一组件相关联的跟踪器规则来存储;
其中所述跟踪器规则可指定针对给定执行路径所期望的采样。
16.如权利要求15所述的方法,其特征在于,还包括:
显示所述应用的第二拓扑图,所述第二拓扑图包括至少部分根据所述跟踪器规则组织的踪迹数据。
17.如权利要求16所述的方法,其特征在于,所述跟踪器规则被跟踪器消费来对所述应用的至少一个执行路径分类。
18.如权利要求17所述的方法,其特征在于,所述跟踪器规则被跟踪器消费来将执行路径分类为多个分类。
19.如权利要求15所述的方法,其特征在于,还包括:
呈现包括多个分类建议的用户选择界面,所述第二选择是从所述多个分类建议中选择的。
20.如权利要求19所述的方法,其特征在于,还包括:
分析所述应用的跟踪器数据以确定所述第一组件的多个输入值;以及
将所述多个输入值的至少一子集作为所述多个分类建议来呈现。
21.如权利要求19所述的方法,其特征在于,还包括:
分析所述应用的跟踪器数据来确定根据使用频率组织的多个执行路径;以及
将所述多个执行路径的至少一子集作为所述多个分类建议来呈现。
22.如权利要求19所述的方法,其特征在于,还包括:
分析所述应用的跟踪器数据来确定根据检测到的错误组织的多个执行路径;以及
将所述多个执行路径的至少一子集作为所述多个分类建议来呈现。
23.如权利要求19所述的方法,其特征在于,还包括:
分析所述应用的跟踪器数据来确定根据性能度量组织的多个执行路径;以及
将所述多个执行路径的至少一子集作为所述多个分类建议来呈现。
24.一种用于应用执行路径跟踪的系统,包括:
至少一个处理器;
包括从跟踪应用采集的踪迹数据的踪迹数据库;
在包括所述至少一个处理器的设备上呈现的交互式用户界面,所述交互式用户界面:
显示应用的拓扑图,所述应用包括多个组件,所述拓扑图是通过分析所述踪迹数据构建的并包括所述多个组件的表示;
接收来自用户输入设备的第一选择,所述第一选择包括在所述拓扑图内的第一组件;
接收第二选择,所述第二选择包括用于跟踪穿过所述第一组件的执行路径的第一条件;以及
将针对所述第一组件的所述第一条件作为与所述第一组件相关联的跟踪器规则来存储;
其中所述跟踪器规则可指定针对给定执行路径所期望的采样。
25.如权利要求24所述的系统,其特征在于,所述交互式用户界面进一步:
呈现包括多个分类建议的用户选择界面,所述第二选择是从所述多个分类建议中选择的。
26.如权利要求25所述的系统,其特征在于,进一步包括:
分析引擎,所述分析引擎分析所述应用的跟踪器数据以确定所述第一组件的多个输入值;
所述交互式用户界面进一步:
将所述多个输入值的至少一子集作为所述多个分类建议来呈现。
27.如权利要求26所述的系统,其特征在于,所述分析引擎从根据使用频率分类的多个执行路径确定所述多个输入值。
28.如权利要求26所述的系统,其特征在于,所述分析引擎从根据检测到的错误分类的多个执行路径确定所述多个输入值。
29.如权利要求26所述的系统,其特征在于,所述分析引擎从根据性能度量分类的多个执行路径确定所述多个输入值。
30.一种在至少一个计算机处理器上执行的用于应用执行路径跟踪的方法,所述方法包括:
跟踪应用;
接收针对穿过第一函数的执行路径的第一分类的第一规则,所述第一规则定义第一跟踪采样频率;
当执行所述应用时:
在执行多个所述执行路径的同时检测所述第一函数;
通过根据所述第一跟踪采样频率选择所述执行路径的第一子集来跟踪所述多个执行路径,并且引起所述执行路径的所述第一子集中的每个执行路径将被跟踪;
其中所述跟踪包括针对所述执行路径的所述第一子集中的每个执行路径创建标识符,所述执行路径的标识符与踪迹数据相关联,并且所述标识符被传递到所述执行路径中的每个执行路径中的后续函数。
31.如权利要求30所述的方法,其特征在于,所述标识符唯一标识所述执行路径的每个实例。
32.如权利要求30所述的方法,其特征在于,所述标识符用公共标识符标识所述执行路径中的每个执行路径。
33.如权利要求30所述的方法,其特征在于,还包括:
对照所述第一分类来评估所述执行路径中的每个执行路径以创建执行路径的所述第一子集,执行路径的所述第一子集匹配所述第一分类。
34.如权利要求33所述的方法,其特征在于,所述第一分类由传递到所述第一函数的至少一个输入定义。
35.如权利要求33所述的方法,其特征在于,还包括:
接收针对穿过所述第一函数的执行路径的第二分类的第二规则,所述第二规则定义第二跟踪采样频率;
在执行所述应用时,对照所述第二分类来评估所述执行路径中的每个执行路径来创建执行路径的第二子集,执行路径的所述第二子集匹配所述第一分类;以及
引起所述执行路径的所述第二子集被根据所述第二跟踪采样频率跟踪。
36.如权利要求35所述的方法,其特征在于,执行路径的所述第一子集不与执行路径的所述第二子集重叠。
37.如权利要求35所述的方法,其特征在于,执行路径的所述第一子集具有与执行路径的所述第二子集公共的至少第一执行路径。
38.一种用于应用执行路径跟踪的系统,包括:
至少一个处理器;
在所述至少一个处理器上执行的执行环境,所述执行环境执行应用;
跟踪器,所述跟踪器:
接收针对穿过第一函数的执行路径的第一分类的第一规则,所述第一规则定义第一跟踪采样频率;
在执行多个所述执行路径的同时检测所述第一函数;
通过根据所述第一跟踪采样频率选择所述执行路径的第一子集来跟踪所述多个执行路径,并且引起所述执行路径的所述第一子集中的每个执行路径被跟踪;
其中所述跟踪器进一步:针对所述执行路径的所述第一子集中的每个执行路径创建标识符,所述执行路径的标识符与踪迹数据相关联,并且所述标识符被传递到所述执行路径中的每个执行路径中的后续函数。
39.如权利要求38所述的系统,其特征在于,所述标识符唯一标识所述执行路径的每个实例。
40.如权利要求38所述的系统,其特征在于,所述标识符用公共标识符标识所述执行路径中的每个执行路径。
41.如权利要求38所述的系统,其特征在于,所述跟踪器进一步:
对照所述第一分类来评估所述执行路径中的每个执行路径以创建执行路径的所述第一子集,执行路径的所述第一子集匹配所述第一分类。
42.如权利要求41所述的系统,其特征在于,所述第一分类由传递到所述第一函数的至少一个输入定义。
43.如权利要求41所述的系统,其特征在于,所述跟踪器进一步:
接收针对穿过所述第一函数的执行路径的第二分类的第二规则,所述第二规则定义第二跟踪采样频率;
在执行所述应用时,对照所述第二分类来评估所述执行路径中的每个执行路径来创建执行路径的第二子集,执行路径的所述第二子集匹配所述第一分类;以及
引起所述执行路径的所述第二子集被根据所述第二跟踪采样频率跟踪。
44.如权利要求43所述的系统,其特征在于,执行路径的所述第一子集不与执行路径的所述第二子集重叠。
45.如权利要求43所述的系统,其特征在于,执行路径的所述第一子集具有与执行路径的所述第二子集公共的至少第一执行路径。
46.一种具有指令的计算机可读存储介质,当所述指令被执行时使得机器执行如权利要求1-7、15-23、30-37中任一权利要求所述的方法。
47.一种计算机系统,包括用于执行如权利要求1-7、15-23、30-37中任一权利要求所述的方法的装置。
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361903786P | 2013-11-13 | 2013-11-13 | |
US201361903775P | 2013-11-13 | 2013-11-13 | |
US201361903781P | 2013-11-13 | 2013-11-13 | |
US61/903,775 | 2013-11-13 | ||
US61/903,781 | 2013-11-13 | ||
US61/903,786 | 2013-11-13 | ||
PCT/IB2014/060240 WO2015071778A1 (en) | 2013-11-13 | 2014-03-27 | Application execution path tracing with configurable origin definition |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105765528A CN105765528A (zh) | 2016-07-13 |
CN105765528B true CN105765528B (zh) | 2019-09-24 |
Family
ID=53056858
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480062439.5A Active CN105765528B (zh) | 2013-11-13 | 2014-03-27 | 具有可配置原点定义的应用执行路径跟踪的方法、系统和介质 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9772927B2 (zh) |
EP (1) | EP3069241B1 (zh) |
CN (1) | CN105765528B (zh) |
WO (1) | WO2015071778A1 (zh) |
Families Citing this family (65)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8954546B2 (en) | 2013-01-25 | 2015-02-10 | Concurix Corporation | Tracing with a workload distributor |
US8924941B2 (en) | 2013-02-12 | 2014-12-30 | Concurix Corporation | Optimization analysis using similar frequencies |
US8997063B2 (en) | 2013-02-12 | 2015-03-31 | Concurix Corporation | Periodicity optimization in an automated tracing system |
US20130283281A1 (en) | 2013-02-12 | 2013-10-24 | Concurix Corporation | Deploying Trace Objectives using Cost Analyses |
US20130227529A1 (en) | 2013-03-15 | 2013-08-29 | Concurix Corporation | Runtime Memory Settings Derived from Trace Data |
US9575874B2 (en) | 2013-04-20 | 2017-02-21 | Microsoft Technology Licensing, Llc | Error list and bug report analysis for configuring an application tracer |
US9292415B2 (en) | 2013-09-04 | 2016-03-22 | Microsoft Technology Licensing, Llc | Module specific tracing in a shared module environment |
CN105765528B (zh) | 2013-11-13 | 2019-09-24 | 微软技术许可有限责任公司 | 具有可配置原点定义的应用执行路径跟踪的方法、系统和介质 |
US20160070636A1 (en) * | 2014-09-04 | 2016-03-10 | Home Box Office, Inc. | Conditional wrapper for program object |
US11159599B2 (en) * | 2014-10-10 | 2021-10-26 | Dynatrace Llc | Method and system for real-time modeling of communication, virtualization and transaction execution related topological aspects of monitored software applications and hardware entities |
US9967906B2 (en) | 2015-01-07 | 2018-05-08 | Cisco Technology, Inc. | Wireless roaming using a distributed store |
US9774654B2 (en) * | 2015-02-02 | 2017-09-26 | Linkedin Corporation | Service call graphs for website performance |
US10394808B2 (en) | 2015-02-26 | 2019-08-27 | International Business Machines Corporation | Database query execution tracing and data generation for diagnosing execution issues |
CN106209734B (zh) * | 2015-04-30 | 2019-07-19 | 阿里巴巴集团控股有限公司 | 进程的身份认证方法和装置 |
US10142353B2 (en) | 2015-06-05 | 2018-11-27 | Cisco Technology, Inc. | System for monitoring and managing datacenters |
US10536357B2 (en) | 2015-06-05 | 2020-01-14 | Cisco Technology, Inc. | Late data detection in data center |
US9985837B2 (en) | 2015-07-23 | 2018-05-29 | Cisco Technology, Inc. | Refresh of the binding tables between data-link-layer and network-layer addresses on mobility in a data center environment |
CN106997367B (zh) * | 2016-01-26 | 2020-05-08 | 华为技术有限公司 | 程序文件的分类方法、分类装置和分类系统 |
US20170255506A1 (en) * | 2016-03-07 | 2017-09-07 | Dell Software, Inc. | Monitoring, analyzing, and mapping of computing resources |
US10379990B2 (en) | 2016-06-29 | 2019-08-13 | Oracle International Corporation | Multi-dimensional selective tracing |
US10599551B2 (en) * | 2016-08-12 | 2020-03-24 | The University Of Chicago | Automatically detecting distributed concurrency errors in cloud systems |
US10481997B2 (en) | 2016-11-27 | 2019-11-19 | Amazon Technologies, Inc. | Distributed code tracing system |
US10891326B2 (en) * | 2017-01-05 | 2021-01-12 | International Business Machines Corporation | Representation of a data analysis using a flow graph |
US10440723B2 (en) | 2017-05-17 | 2019-10-08 | Cisco Technology, Inc. | Hierarchical channel assignment in wireless networks |
US10388039B2 (en) | 2017-05-31 | 2019-08-20 | International Business Machines Corporation | Accelerating data-driven scientific discovery |
US10555341B2 (en) | 2017-07-11 | 2020-02-04 | Cisco Technology, Inc. | Wireless contention reduction |
US10440031B2 (en) | 2017-07-21 | 2019-10-08 | Cisco Technology, Inc. | Wireless network steering |
US10735981B2 (en) | 2017-10-10 | 2020-08-04 | Cisco Technology, Inc. | System and method for providing a layer 2 fast re-switch for a wireless controller |
US10375667B2 (en) | 2017-12-07 | 2019-08-06 | Cisco Technology, Inc. | Enhancing indoor positioning using RF multilateration and optical sensing |
CN108089989B (zh) * | 2018-01-04 | 2020-10-16 | 武汉斗鱼网络科技有限公司 | 一种路径检测方法、电子设备及可读存储介质 |
US11442836B2 (en) | 2018-02-23 | 2022-09-13 | Dynatrace Llc | Method and system for real-time correlation of disparate sources of topological information to create a unified topological model of a distributed information system |
US10860411B2 (en) | 2018-03-28 | 2020-12-08 | Futurewei Technologies, Inc. | Automatically detecting time-of-fault bugs in cloud systems |
US10599552B2 (en) | 2018-04-25 | 2020-03-24 | Futurewei Technologies, Inc. | Model checker for finding distributed concurrency bugs |
US10740219B2 (en) * | 2018-04-27 | 2020-08-11 | Workman Nydegger | Selectively tracing portions of computer process execution |
US10747645B2 (en) * | 2018-04-27 | 2020-08-18 | Microsoft Technology Licensing, Llc | Selectively tracing portions of computer process execution |
US10673618B2 (en) | 2018-06-08 | 2020-06-02 | Cisco Technology, Inc. | Provisioning network resources in a wireless network using a native blockchain platform |
US10505718B1 (en) | 2018-06-08 | 2019-12-10 | Cisco Technology, Inc. | Systems, devices, and techniques for registering user equipment (UE) in wireless networks using a native blockchain platform |
US10873636B2 (en) | 2018-07-09 | 2020-12-22 | Cisco Technology, Inc. | Session management in a forwarding plane |
US11294719B2 (en) * | 2018-07-17 | 2022-04-05 | Vmware, Inc. | Generating metrics for quantifying computing resource usage based on cost and utilization of virtualized services and optimizing performance through virtualized service migration |
US10671462B2 (en) | 2018-07-24 | 2020-06-02 | Cisco Technology, Inc. | System and method for message management across a network |
US11252040B2 (en) | 2018-07-31 | 2022-02-15 | Cisco Technology, Inc. | Advanced network tracing in the data plane |
US10735209B2 (en) | 2018-08-08 | 2020-08-04 | Cisco Technology, Inc. | Bitrate utilization feedback and control in 5G-NSA networks |
US10284429B1 (en) | 2018-08-08 | 2019-05-07 | Cisco Technology, Inc. | System and method for sharing subscriber resources in a network environment |
US10623949B2 (en) | 2018-08-08 | 2020-04-14 | Cisco Technology, Inc. | Network-initiated recovery from a text message delivery failure |
US10949557B2 (en) | 2018-08-20 | 2021-03-16 | Cisco Technology, Inc. | Blockchain-based auditing, instantiation and maintenance of 5G network slices |
US10374749B1 (en) | 2018-08-22 | 2019-08-06 | Cisco Technology, Inc. | Proactive interference avoidance for access points |
US10567293B1 (en) | 2018-08-23 | 2020-02-18 | Cisco Technology, Inc. | Mechanism to coordinate end to end quality of service between network nodes and service provider core |
US10652152B2 (en) | 2018-09-04 | 2020-05-12 | Cisco Technology, Inc. | Mobile core dynamic tunnel end-point processing |
US10230605B1 (en) | 2018-09-04 | 2019-03-12 | Cisco Technology, Inc. | Scalable distributed end-to-end performance delay measurement for segment routing policies |
US10779188B2 (en) | 2018-09-06 | 2020-09-15 | Cisco Technology, Inc. | Uplink bandwidth estimation over broadband cellular networks |
US11558288B2 (en) | 2018-09-21 | 2023-01-17 | Cisco Technology, Inc. | Scalable and programmable mechanism for targeted in-situ OAM implementation in segment routing networks |
US10285155B1 (en) | 2018-09-24 | 2019-05-07 | Cisco Technology, Inc. | Providing user equipment location information indication on user plane |
US11257263B1 (en) * | 2018-10-23 | 2022-02-22 | Palantir Technologies Inc. | Systems and methods for generating dynamic pipeline visualizations |
US10601724B1 (en) | 2018-11-01 | 2020-03-24 | Cisco Technology, Inc. | Scalable network slice based queuing using segment routing flexible algorithm |
US10567245B1 (en) | 2019-02-28 | 2020-02-18 | Cisco Technology, Inc. | Proactive and intelligent packet capturing for a mobile packet core |
US10901871B2 (en) | 2019-03-05 | 2021-01-26 | Intel Corporation | System, apparatus and method for dynamic multi-source tracing in a system |
US10911329B2 (en) * | 2019-05-13 | 2021-02-02 | Cisco Technology, Inc. | Path and cadence optimization for efficient data collection from devices |
US11003572B2 (en) | 2019-09-11 | 2021-05-11 | International Business Machines Corporation | Traffic-based mutation/coverage testing requirements |
US11119902B2 (en) * | 2019-11-11 | 2021-09-14 | International Business Machines Corporation | Creating a higher order mutant for mutation testing software |
US11245611B2 (en) * | 2020-05-12 | 2022-02-08 | Arista Networks, Inc. | Analysis of routing policy application to routes |
US11329903B2 (en) | 2020-07-20 | 2022-05-10 | Red Hat, Inc. | Incorporation of a trace visualization with a traffic graph visualization in a service mesh |
US11381941B2 (en) | 2020-10-13 | 2022-07-05 | Cisco Technology, Inc. | Dynamic permit/deny UE/realm list update and cost optimization based on network attach failure incidents |
US11940895B2 (en) * | 2021-03-02 | 2024-03-26 | VMware LLC | Methods and systems for intelligent sampling of application traces |
US12093389B2 (en) | 2022-03-14 | 2024-09-17 | Microsoft Technology Licensing, Llc | Data traffic characterization prioritization |
US20240061762A1 (en) * | 2022-08-19 | 2024-02-22 | Sap Se | On-demand contextual trace log generation |
Family Cites Families (462)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4907151A (en) | 1988-09-30 | 1990-03-06 | Digital Equipment Corporation | System and method for garbage collection with ambiguous roots |
JP2765969B2 (ja) | 1989-07-31 | 1998-06-18 | 株式会社日立製作所 | 図式データ駆動型プログラム開発支援装置 |
US5179702A (en) | 1989-12-29 | 1993-01-12 | Supercomputer Systems Limited Partnership | System and method for controlling a highly parallel multiprocessor using an anarchy based scheduler for parallel execution thread scheduling |
CA2078315A1 (en) | 1991-09-20 | 1993-03-21 | Christopher L. Reeve | Parallel processing apparatus and method for utilizing tiling |
US5369570A (en) | 1991-11-14 | 1994-11-29 | Parad; Harvey A. | Method and system for continuous integrated resource management |
US5606688A (en) | 1994-08-31 | 1997-02-25 | International Business Machines Corporation | Method and apparatus for dynamic cache memory allocation via single-reference residency times |
US5778004A (en) | 1995-06-02 | 1998-07-07 | Unisys Corporation | Vector translator |
US5689363A (en) | 1995-06-12 | 1997-11-18 | The Regents Of The University Of California | Long-pulse-width narrow-bandwidth solid state laser |
US5870606A (en) | 1996-05-01 | 1999-02-09 | International Business Machines Corp. | Data triggered trace technique for debugging software programs |
US5758183A (en) | 1996-07-17 | 1998-05-26 | Digital Equipment Corporation | Method of reducing the number of overhead instructions by modifying the program to locate instructions that access shared data stored at target addresses before program execution |
US6591414B2 (en) | 1996-10-28 | 2003-07-08 | Fujitsu Limited | Binary program conversion apparatus, binary program conversion method and program recording medium |
JP3730740B2 (ja) | 1997-02-24 | 2006-01-05 | 株式会社日立製作所 | 並列ジョブ多重スケジューリング方法 |
JPH10240813A (ja) | 1997-02-26 | 1998-09-11 | Honda Motor Co Ltd | 業務管理システム |
US5937194A (en) | 1997-03-12 | 1999-08-10 | International Business Machines Corporation | Method of, system for, and article of manufacture for providing a generic reduction object for data parallelism |
US6892226B1 (en) | 1997-03-27 | 2005-05-10 | Intel Corporation | System for delivery of dynamic content to a client device |
US5953736A (en) | 1997-04-23 | 1999-09-14 | Sun Microsystems, Inc. | Write barrier system and method including pointer-specific instruction variant replacement mechanism |
US7091948B2 (en) | 1997-04-25 | 2006-08-15 | Immersion Corporation | Design of force sensations for haptic feedback computer interfaces |
US6032201A (en) | 1997-06-19 | 2000-02-29 | Cirrus Logic, Inc. | Plug and play system using proxy for retrieving correct information about current device from system registry when current device is not the newly installed device |
US6658447B2 (en) | 1997-07-08 | 2003-12-02 | Intel Corporation | Priority based simultaneous multi-threading |
US6282701B1 (en) | 1997-07-31 | 2001-08-28 | Mutek Solutions, Ltd. | System and method for monitoring and analyzing the execution of computer programs |
US6202199B1 (en) * | 1997-07-31 | 2001-03-13 | Mutek Solutions, Ltd. | System and method for remotely analyzing the execution of computer programs |
US6286130B1 (en) | 1997-08-05 | 2001-09-04 | Intel Corporation | Software implemented method for automatically validating the correctness of parallel computer programs |
US6083281A (en) | 1997-11-14 | 2000-07-04 | Nortel Networks Corporation | Process and apparatus for tracing software entities in a distributed system |
GB9725742D0 (en) | 1997-12-04 | 1998-02-04 | Hewlett Packard Co | Object gateway |
US6662358B1 (en) | 1997-12-12 | 2003-12-09 | International Business Machines Corporation | Minimizing profiling-related perturbation using periodic contextual information |
US6513155B1 (en) | 1997-12-12 | 2003-01-28 | International Business Machines Corporation | Method and system for merging event-based data and sampled data into postprocessed trace output |
US6059842A (en) | 1998-04-14 | 2000-05-09 | International Business Machines Corp. | System and method for optimizing computer software and hardware |
AU5461099A (en) | 1998-07-30 | 2000-02-21 | Mutek Solutions, Ltd. | System and method for remotely analyzing the execution of computer programs |
US6158049A (en) | 1998-08-11 | 2000-12-05 | Compaq Computer Corporation | User transparent mechanism for profile feedback optimization |
US6381735B1 (en) | 1998-10-02 | 2002-04-30 | Microsoft Corporation | Dynamic classification of sections of software |
US6826752B1 (en) | 1998-12-17 | 2004-11-30 | California Institute Of Technology | Programming system and thread synchronization mechanisms for the development of selectively sequential and multithreaded computer programs |
US6230313B1 (en) | 1998-12-23 | 2001-05-08 | Cray Inc. | Parallelism performance analysis based on execution trace information |
US6378066B1 (en) | 1999-02-04 | 2002-04-23 | Sun Microsystems, Inc. | Method, apparatus, and article of manufacture for developing and executing data flow programs, and optimizing user input specifications |
US6321240B1 (en) | 1999-03-15 | 2001-11-20 | Trishul M. Chilimbi | Data structure partitioning with garbage collection to optimize cache utilization |
US7185367B2 (en) | 1999-05-11 | 2007-02-27 | Cylant, Inc. | Method and system for establishing normal software system behavior and departures from normal behavior |
US6397382B1 (en) | 1999-05-12 | 2002-05-28 | Wind River Systems, Inc. | Dynamic software code instrumentation with cache disabling feature |
US6636242B2 (en) | 1999-08-31 | 2003-10-21 | Accenture Llp | View configurer in a presentation services patterns environment |
US6856950B1 (en) | 1999-10-15 | 2005-02-15 | Silicon Graphics, Inc. | Abstract verification environment |
US6584487B1 (en) | 1999-11-16 | 2003-06-24 | Hewlett-Packard Development Company, L.P. | Method, system, and apparatus for managing tasks |
US6748420B1 (en) | 1999-11-23 | 2004-06-08 | Cisco Technology, Inc. | Methods and apparatus for providing shared access to an application |
US6629128B1 (en) | 1999-11-30 | 2003-09-30 | Recursion Software, Inc. | System and method for distributed processing in a computer network |
US7058928B2 (en) | 1999-12-23 | 2006-06-06 | Identify Software Ltd. | System and method for conditional tracing of computer programs |
US20020087949A1 (en) | 2000-03-03 | 2002-07-04 | Valery Golender | System and method for software diagnostics using a combination of visual and dynamic tracing |
US7254607B2 (en) | 2000-03-30 | 2007-08-07 | United Devices, Inc. | Dynamic coordination and control of network connected devices for large-scale network site testing and associated architectures |
JP3641997B2 (ja) | 2000-03-30 | 2005-04-27 | 日本電気株式会社 | プログラム変換装置及び方法並びに記録媒体 |
GB0011020D0 (en) | 2000-05-09 | 2000-06-28 | Ibm | Intercepting system API calls |
US6735687B1 (en) | 2000-06-15 | 2004-05-11 | Hewlett-Packard Development Company, L.P. | Multithreaded microprocessor with asymmetrical central processing units |
US6704024B2 (en) | 2000-08-07 | 2004-03-09 | Zframe, Inc. | Visual content browsing using rasterized representations |
US20020112033A1 (en) | 2000-08-09 | 2002-08-15 | Doemling Marcus F. | Content enhancement system and method |
CA2315449A1 (en) * | 2000-08-10 | 2002-02-10 | Ibm Canada Limited-Ibm Canada Limitee | Generation of runtime execution traces of applications and associated problem determination |
GB2366879B (en) * | 2000-09-16 | 2005-02-16 | Ibm | Tracing the execution path of a computer program |
US7065763B1 (en) | 2000-09-29 | 2006-06-20 | Emc Corporation | Method of reducing contention of a highly contended lock protecting multiple data items |
US20040205718A1 (en) | 2000-12-11 | 2004-10-14 | Sun Microsystems, Inc. | Self-tuning object libraries |
US7058927B2 (en) | 2000-12-21 | 2006-06-06 | Veritas Operating Corporation | Computer software run-time analysis systems and methods |
US7197505B2 (en) | 2000-12-22 | 2007-03-27 | Star Bridge Systems, Inc. | Multi-dimensional recursive wavefront behavioral synthesis |
US8312435B2 (en) | 2000-12-26 | 2012-11-13 | Identify Software Ltd. (IL) | System and method for conditional tracing of computer programs |
US7360205B2 (en) | 2001-02-09 | 2008-04-15 | International Business Machines Corporation | Minimizing interaction costs among components of computer programs |
US6813731B2 (en) | 2001-02-26 | 2004-11-02 | Emc Corporation | Methods and apparatus for accessing trace data |
US6598141B1 (en) | 2001-03-08 | 2003-07-22 | Microsoft Corporation | Manipulating interior pointers on a stack during garbage collection |
US20020184615A1 (en) | 2001-04-25 | 2002-12-05 | Sumner William Earl | System and method for selectively and automatically modifying the source code of a computer program |
US7047521B2 (en) | 2001-06-07 | 2006-05-16 | Lynoxworks, Inc. | Dynamic instrumentation event trace system and methods |
WO2002103585A1 (en) | 2001-06-15 | 2002-12-27 | Cadence Design Systems, Inc. | Enhancing mergeability of datapaths and reducing datapath widths responsively to upper bound on information content |
US20020199179A1 (en) | 2001-06-21 | 2002-12-26 | Lavery Daniel M. | Method and apparatus for compiler-generated triggering of auxiliary codes |
US6593883B2 (en) | 2001-06-25 | 2003-07-15 | Motorola, Inc. | Timing estimation method and apparatus for a location system |
US20020196229A1 (en) | 2001-06-26 | 2002-12-26 | Frank Chen | Graphics-based calculator capable of directly editing data points on graph |
US6928488B1 (en) | 2001-06-27 | 2005-08-09 | Microsoft Corporation | Architecture and method for serialization and deserialization of objects |
US7117504B2 (en) | 2001-07-10 | 2006-10-03 | Microsoft Corporation | Application program interface that enables communication for a network software platform |
JP2005504461A (ja) | 2001-07-13 | 2005-02-10 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | ジョブ制御を用いてメディアアプリケーションおよびメディアシステムを実行する方法 |
US7020659B2 (en) | 2001-08-15 | 2006-03-28 | Oic Acquistion I Corporation | System and method for managing bi-directional relationships between objects |
US7093234B2 (en) | 2001-08-24 | 2006-08-15 | International Business Machines Corporation | Dynamic CPU usage profiling and function call tracing |
US6954924B2 (en) | 2001-09-20 | 2005-10-11 | International Business Machines Corporation | System and method for employing externalized, dynamically configurable, cacheable trigger points |
US7213240B2 (en) | 2001-10-05 | 2007-05-01 | Sun Microsystems, Inc. | Platform-independent selective ahead-of-time compilation |
US7499907B2 (en) | 2001-10-12 | 2009-03-03 | Teradata Us, Inc. | Index selection in a database system |
US7117497B2 (en) | 2001-11-08 | 2006-10-03 | Honeywell International, Inc. | Budget transfer mechanism for time-partitioned real-time operating systems |
US20030145314A1 (en) | 2002-01-31 | 2003-07-31 | Khoa Nguyen | Method of efficient dynamic data cache prefetch insertion |
US20040015600A1 (en) | 2002-02-21 | 2004-01-22 | Ashutosh Tiwary | Workload post-processing and parameterization for a system for performance testing of N-tiered computer systems using recording and playback of workloads |
US7275243B2 (en) | 2002-03-22 | 2007-09-25 | Sun Microsystems, Inc. | Mobile download system |
US20030231207A1 (en) | 2002-03-25 | 2003-12-18 | Baohua Huang | Personal e-mail system and method |
US7890771B2 (en) | 2002-04-17 | 2011-02-15 | Microsoft Corporation | Saving and retrieving data based on public key encryption |
AU2003234144B2 (en) | 2002-04-19 | 2008-12-04 | Opentv, Inc. | Supporting common interactive television functionality through presentation engine syntax |
US7398531B2 (en) | 2002-05-07 | 2008-07-08 | Oracle International Corporation | Providing common memory management code to objects that are instances of different classes |
US7451206B2 (en) | 2002-05-20 | 2008-11-11 | Siemens Communications, Inc. | Send of software tracer messages via IP from several sources to be stored by a remote server |
EP1527395A4 (en) | 2002-06-25 | 2006-03-01 | Ibm | METHOD AND SYSTEM FOR CONTROLLING THE PERFORMANCE OF AN APPLICATION IN A DISTRIBUTED ENVIRONMENT |
US7143412B2 (en) | 2002-07-25 | 2006-11-28 | Hewlett-Packard Development Company, L.P. | Method and apparatus for optimizing performance in a multi-processing system |
AU2003259742B2 (en) | 2002-08-09 | 2010-07-15 | Reflexion Networks, Inc. | System and method for controlling access to an electronic message recipient |
US7146607B2 (en) | 2002-09-17 | 2006-12-05 | International Business Machines Corporation | Method and system for transparent dynamic optimization in a multiprocessing environment |
US7310777B2 (en) | 2002-10-18 | 2007-12-18 | Computer Associates Think, Inc. | User interface for viewing performance information about transactions |
US7143396B2 (en) | 2002-11-06 | 2006-11-28 | Sun Microsystems, Inc. | System and method for measuring code segment performance |
US7386839B1 (en) | 2002-11-06 | 2008-06-10 | Valery Golender | System and method for troubleshooting software configuration problems using application tracing |
US7100151B2 (en) | 2002-11-22 | 2006-08-29 | Texas Instruments Incorporated | Recovery from corruption using event offset format in data trace |
JP4436036B2 (ja) | 2002-12-18 | 2010-03-24 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 情報処理装置、トレース処理方法、プログラム及び記録媒体 |
US20040154010A1 (en) | 2003-01-31 | 2004-08-05 | Pedro Marcuello | Control-quasi-independent-points guided speculative multithreading |
US7587584B2 (en) | 2003-02-19 | 2009-09-08 | Intel Corporation | Mechanism to exploit synchronization overhead to improve multithreaded performance |
US8032866B1 (en) | 2003-03-27 | 2011-10-04 | Identify Software Ltd. | System and method for troubleshooting runtime software problems using application learning |
US7334230B2 (en) | 2003-03-31 | 2008-02-19 | International Business Machines Corporation | Resource allocation in a NUMA architecture based on separate application specified resource and strength preferences for processor and memory resources |
US6915212B2 (en) | 2003-05-08 | 2005-07-05 | Moac, Llc | Systems and methods for processing complex data sets |
US20050015368A1 (en) | 2003-07-15 | 2005-01-20 | International Business Machines Corporation | Query modelling tool having a dynamically adaptive interface |
WO2005017735A1 (ja) | 2003-08-19 | 2005-02-24 | Fujitsu Limited | ディスクアレイ装置におけるボトルネックを検出するシステムおよびプログラム |
US7415044B2 (en) | 2003-08-22 | 2008-08-19 | Telefonaktiebolaget Lm Ericsson (Publ) | Remote synchronization in packet-switched networks |
US7194664B1 (en) * | 2003-09-08 | 2007-03-20 | Poon Fung | Method for tracing application execution path in a distributed data processing system |
US20050066149A1 (en) | 2003-09-22 | 2005-03-24 | Codito Technologies Private Limited | Method and system for multithreaded processing using errands |
US7457872B2 (en) | 2003-10-15 | 2008-11-25 | Microsoft Corporation | On-line service/application monitoring and reporting system |
US7478371B1 (en) | 2003-10-20 | 2009-01-13 | Sun Microsystems, Inc. | Method for trace collection |
US7577943B2 (en) | 2003-10-24 | 2009-08-18 | Microsoft Corporation | Statistical memory leak detection |
US7587709B2 (en) | 2003-10-24 | 2009-09-08 | Microsoft Corporation | Adaptive instrumentation runtime monitoring and analysis |
US7389494B1 (en) | 2003-11-14 | 2008-06-17 | Sun Microsystems, Inc. | Mechanism for statically defined trace points with minimal disabled probe effect |
JP2005149136A (ja) | 2003-11-14 | 2005-06-09 | Fujitsu Ltd | 情報収集プログラム、情報収集方法、情報収集システムおよび情報収集装置 |
JP2008502953A (ja) | 2003-11-17 | 2008-01-31 | ヴァージニア テック インテレクチュアル プロパティーズ,インコーポレイテッド | 分散システムにおけるトランスペアレントなチェックポインティング及びプロセス移行 |
US7584500B2 (en) | 2003-11-19 | 2009-09-01 | Hughes Network Systems, Llc | Pre-fetching secure content using proxy architecture |
US20050131995A1 (en) | 2003-12-11 | 2005-06-16 | International Business Machines Corporation | Autonomic evaluation of web workload characteristics for self-configuration memory allocation |
US7580905B2 (en) | 2003-12-15 | 2009-08-25 | Intel Corporation | Adaptive configuration of platform |
US6970805B1 (en) | 2003-12-23 | 2005-11-29 | Unisys Corporatiion | Analysis of data processing system performance |
US20050149912A1 (en) | 2003-12-29 | 2005-07-07 | Intel Corporation | Dynamic online optimizer |
US7526757B2 (en) | 2004-01-14 | 2009-04-28 | International Business Machines Corporation | Method and apparatus for maintaining performance monitoring structures in a page table for use in monitoring performance of a computer program |
US7490218B2 (en) | 2004-01-22 | 2009-02-10 | University Of Washington | Building a wavecache |
US7913305B2 (en) | 2004-01-30 | 2011-03-22 | Microsoft Corporation | System and method for detecting malware in an executable code module according to the code module's exhibited behavior |
US20050180330A1 (en) | 2004-02-17 | 2005-08-18 | Touchgraph Llc | Method of animating transitions and stabilizing node motion during dynamic graph navigation |
US7882546B2 (en) | 2004-03-04 | 2011-02-01 | International Business Machines Corporation | Controlling access of a client system to an access protected remote resource |
EP1580668B1 (en) | 2004-03-25 | 2007-12-26 | Software Engineering GmbH | Provision of access paths to data within a database |
US7631010B2 (en) | 2004-04-16 | 2009-12-08 | Microsoft Corporation | Systems and methods in support of data base page synchronization |
US7587721B2 (en) | 2004-05-20 | 2009-09-08 | Sap Ag | Sharing objects in runtime systems |
US7707583B2 (en) | 2004-05-20 | 2010-04-27 | Sap Ag | Robust sharing of runtime systems |
US7415704B2 (en) | 2004-05-20 | 2008-08-19 | Sap Ag | Sharing objects in runtime systems |
US7343521B2 (en) | 2004-05-28 | 2008-03-11 | International Business Machines Corporation | Method and apparatus to preserve trace data |
JP2005346414A (ja) | 2004-06-03 | 2005-12-15 | Fujitsu Ltd | トレース処理プログラム、方法及び装置 |
US7827539B1 (en) | 2004-06-25 | 2010-11-02 | Identify Software Ltd. | System and method for automated tuning of program execution tracing |
US7954050B2 (en) | 2004-06-25 | 2011-05-31 | Icesoft Technologies Canada Corp. | Systems and methods for rendering and increasing portability of document-based user interface software objects |
US8200805B2 (en) | 2004-06-28 | 2012-06-12 | Neuse Douglas M | System and method for performing capacity planning for enterprise applications |
US8166462B2 (en) | 2006-09-07 | 2012-04-24 | Oracle America, Inc. | Method and apparatus for sorting and displaying costs in a data space profiler |
JP3901180B2 (ja) | 2004-06-30 | 2007-04-04 | 日本電気株式会社 | プログラム並列化装置及びその方法並びにプログラム |
JP3901182B2 (ja) | 2004-06-30 | 2007-04-04 | 日本電気株式会社 | プログラム並列化装置及びその方法並びにプログラム |
US7346809B2 (en) | 2004-08-05 | 2008-03-18 | International Business Machines Corporation | Bootable post crash analysis environment |
US7546601B2 (en) | 2004-08-10 | 2009-06-09 | International Business Machines Corporation | Apparatus, system, and method for automatically discovering and grouping resources used by a business process |
US20060047752A1 (en) | 2004-08-27 | 2006-03-02 | Reconda International Corp. | A System and Method to Capture, Filter, and Statistically Analyze Electronic Messages |
US8010337B2 (en) | 2004-09-22 | 2011-08-30 | Microsoft Corporation | Predicting database system performance |
US20060101467A1 (en) | 2004-10-18 | 2006-05-11 | International Business Machines Corporation | Process execution management based on resource requirements and business impacts |
US8566326B2 (en) | 2004-11-05 | 2013-10-22 | Oracle International Corporation | High-performance log-based processing |
US7774295B2 (en) | 2004-11-17 | 2010-08-10 | Targit A/S | Database track history |
US7743380B2 (en) | 2005-01-21 | 2010-06-22 | Hewlett-Packard Development Company, L.P. | Monitoring clustered software applications |
US7409520B2 (en) | 2005-01-25 | 2008-08-05 | International Business Machines Corporation | Systems and methods for time division multiplex multithreading |
US7606168B2 (en) | 2005-01-28 | 2009-10-20 | Attenex Corporation | Apparatus and method for message-centric analysis and multi-aspect viewing using social networks |
US7398429B2 (en) | 2005-02-03 | 2008-07-08 | Cisco Technology, Inc. | System and method for tracing and logging for software module |
US7543200B2 (en) | 2005-02-17 | 2009-06-02 | Advantest Corporation | Method and system for scheduling tests in a parallel test system |
US8266608B2 (en) | 2005-02-18 | 2012-09-11 | Green Hills Software, Inc. | Post-compile instrumentation of object code for generating execution trace data |
JP4654707B2 (ja) | 2005-02-18 | 2011-03-23 | 日本電気株式会社 | ボトルネック検出システム、測定対象サーバ、ボトルネック検出方法およびプログラム |
US7685561B2 (en) | 2005-02-28 | 2010-03-23 | Microsoft Corporation | Storage API for a common data platform |
US20060200738A1 (en) | 2005-03-02 | 2006-09-07 | Tira Wireless Inc. | System and method for modifying a mobile device application |
US7818150B2 (en) | 2005-03-11 | 2010-10-19 | Hyperformix, Inc. | Method for building enterprise scalability models from load test and trace test data |
US20060230319A1 (en) | 2005-04-12 | 2006-10-12 | Ryali Jogarao M | Automated migration of software instructions |
KR101023274B1 (ko) | 2005-04-20 | 2011-03-18 | 더 보드 오브 리전츠 오브 더 유니버시티 오브 텍사스 시스템 | 셀룰러 통신을 위한 채널 정보 피드백 시스템 및 방법 |
US7681188B1 (en) | 2005-04-29 | 2010-03-16 | Sun Microsystems, Inc. | Locked prefetch scheduling in general cyclic regions |
US7810075B2 (en) | 2005-04-29 | 2010-10-05 | Sap Ag | Common trace files |
US7797585B1 (en) | 2005-05-09 | 2010-09-14 | Emc Corporation | System and method for handling trace data for analysis |
US8527958B2 (en) | 2005-05-16 | 2013-09-03 | Texas Instruments Incorporated | Profiling operating context and tracing program on a target processor |
US7493400B2 (en) | 2005-05-18 | 2009-02-17 | Oracle International Corporation | Creating and dissolving affinity relationships in a cluster |
US8112756B2 (en) | 2006-07-20 | 2012-02-07 | Hewlett-Packard Development Company, L.P. | System and method for evaluating a workload and its impact on performance of a workload manager |
US20060277477A1 (en) | 2005-06-02 | 2006-12-07 | Christenson Mark G K | System and method for generating enhanced depiction of electronic files such as web files |
US8239939B2 (en) | 2005-07-15 | 2012-08-07 | Microsoft Corporation | Browser protection module |
US7239980B2 (en) | 2005-08-30 | 2007-07-03 | International Business Machines Corporation | Method and apparatus for adaptive tracing with different processor frequencies |
US20070061241A1 (en) | 2005-09-15 | 2007-03-15 | Jovanovic Vladan D | Method for trading securities |
US8037465B2 (en) | 2005-09-30 | 2011-10-11 | Intel Corporation | Thread-data affinity optimization using compiler |
US20070089094A1 (en) | 2005-10-13 | 2007-04-19 | Levine Frank E | Temporal sample-based profiling |
WO2007049817A1 (en) | 2005-10-28 | 2007-05-03 | Matsushita Electric Industrial Co., Ltd. | Obfuscation evaluation method and obfuscation method |
EP1783604A3 (en) | 2005-11-07 | 2007-10-03 | Slawomir Adam Janczewski | Object-oriented, parallel language, method of programming and multi-processor computer |
US20070168992A1 (en) | 2005-11-17 | 2007-07-19 | International Business Machines Corporation | Method of tracing back the execution path in a debugger |
US8176081B2 (en) | 2005-11-18 | 2012-05-08 | International Business Machines Corporation | Forms integration of an external data model not implemented through a document object model (DOM) accessible application programming interface (API) |
JP2009519513A (ja) | 2005-12-06 | 2009-05-14 | ボストンサーキッツ インコーポレイテッド | 専用スレッド管理を用いたマルチコアの演算処理方法及び装置 |
US7730082B2 (en) | 2005-12-12 | 2010-06-01 | Google Inc. | Remote module incorporation into a container document |
US8185819B2 (en) | 2005-12-12 | 2012-05-22 | Google Inc. | Module specification for a module to be incorporated into a container document |
US20070204010A1 (en) | 2005-12-12 | 2007-08-30 | Steven Goldberg | Remote Module Syndication System and Method |
US9294334B2 (en) | 2005-12-12 | 2016-03-22 | Google Inc. | Controlling communication within a container document |
US20070136201A1 (en) | 2005-12-12 | 2007-06-14 | Google Inc. | Customized container document modules using preferences |
US7725530B2 (en) | 2005-12-12 | 2010-05-25 | Google Inc. | Proxy server collection of data for module incorporation into a container document |
US7987452B2 (en) | 2005-12-15 | 2011-07-26 | International Business Machines Corporation | Profile-driven lock handling |
WO2007070711A2 (en) | 2005-12-15 | 2007-06-21 | Malloy Patrick J | Interactive network monitoring and analysis |
US20070143795A1 (en) | 2005-12-20 | 2007-06-21 | Duong-Han Tran | Application trace for distributed systems environment |
US7739662B2 (en) | 2005-12-30 | 2010-06-15 | Intel Corporation | Methods and apparatus to analyze processor systems |
US20070180147A1 (en) | 2006-02-01 | 2007-08-02 | Connect It, Llc | System for insertion of advertising content in user-requested internet web pages |
US20070226696A1 (en) | 2006-02-03 | 2007-09-27 | Dell Products L.P. | System and method for the execution of multithreaded software applications |
US20070192467A1 (en) | 2006-02-04 | 2007-08-16 | Keeler James D | System and method for providing advertising and content in a distributed internet access environment |
US20070198524A1 (en) | 2006-02-09 | 2007-08-23 | International Business Machines Corporation | Maintaining connections between application servers and databases in a multitier computer architecture |
US8769511B2 (en) | 2006-02-16 | 2014-07-01 | The Regents Of The University Of California | Dynamic incremental compiler and method |
US20070204223A1 (en) | 2006-02-27 | 2007-08-30 | Jay Bartels | Methods of and systems for personalizing and publishing online content |
US20070214333A1 (en) | 2006-03-10 | 2007-09-13 | Dell Products L.P. | Modifying node descriptors to reflect memory migration in an information handling system with non-uniform memory access |
GB0604991D0 (en) | 2006-03-11 | 2006-04-19 | Slam Games Ltd | Instrumentation for real-time performance profiling |
US20070220513A1 (en) | 2006-03-15 | 2007-09-20 | International Business Machines Corporation | Automatic detection of hang, bottleneck and deadlock |
US9146789B2 (en) | 2006-03-21 | 2015-09-29 | Oracle America, Inc. | Method and apparatus for generating and using location-independent distributed object references |
US7954094B2 (en) | 2006-03-27 | 2011-05-31 | International Business Machines Corporation | Method for improving performance of executable code |
US20070239528A1 (en) | 2006-03-29 | 2007-10-11 | Reachlocal, Inc. | Dynamic proxy method and apparatus for an online marketing campaign |
US7552308B2 (en) | 2006-04-04 | 2009-06-23 | International Business Machines Corporation | Method and apparatus for temporary mapping of executable program segments |
US20070260849A1 (en) | 2006-05-05 | 2007-11-08 | Chen Wen-Tzer T | Method and apparatus for executing instrumentation code using a target processor |
US7979245B1 (en) | 2006-05-17 | 2011-07-12 | Quest Software, Inc. | Model-based systems and methods for monitoring computing resource performance |
US7543184B2 (en) | 2006-05-23 | 2009-06-02 | The Mathworks, Inc. | System and method for distributing system tests in parallel computing environments |
US20080126828A1 (en) | 2006-06-07 | 2008-05-29 | Janice Marie Girouard | Dynamic enablement and customization of tracing information in a data processing system |
US20080005281A1 (en) | 2006-06-29 | 2008-01-03 | Microsoft Corporation | Error capture and reporting in a distributed computing environment |
FR2904499B1 (fr) | 2006-07-27 | 2009-01-09 | Commissariat Energie Atomique | Procede de decodage a passage de messages avec ordonnancement selon une fiabilite de voisinage. |
AU2007286155B2 (en) | 2006-08-10 | 2013-12-12 | Ab Initio Technology Llc. | Distributing services in graph-based computations |
US7957934B2 (en) | 2007-05-15 | 2011-06-07 | Dynatrace Software Gmbh | Method and system for processing application performance data ouside of monitored applications to limit overhead caused by monitoring |
US8037457B2 (en) | 2006-09-29 | 2011-10-11 | Sap Ag | Method and system for generating and displaying function call tracker charts |
US7941789B2 (en) | 2006-09-29 | 2011-05-10 | Sap Ag | Common performance trace mechanism |
US8028200B2 (en) | 2006-09-29 | 2011-09-27 | Sap Ag | Tracing operations in multiple computer systems |
US7640459B2 (en) | 2006-09-30 | 2009-12-29 | Sap Ag | Performing computer application trace with other operations |
US7934208B2 (en) | 2006-10-13 | 2011-04-26 | International Business Machines Corporation | Method for transparent on-line dynamic binary optimization |
US7861042B2 (en) | 2006-10-23 | 2010-12-28 | Hewlett-Packard Development Company, L.P. | Processor acquisition of ownership of access coordinator for shared resource |
US20080104362A1 (en) | 2006-10-25 | 2008-05-01 | Buros William M | Method and System for Performance-Driven Memory Page Size Promotion |
US7954095B2 (en) | 2006-11-01 | 2011-05-31 | International Business Machines Corporation | Analysis and selection of optimal function implementations in massively parallel computer |
US8037471B2 (en) | 2006-11-16 | 2011-10-11 | International Business Machines Corporation | Systems and methods for constructing relationship specifications from component interactions |
WO2008064363A2 (en) | 2006-11-22 | 2008-05-29 | Take Two Interactive Software, Inc. | System and method for real-time pose-based deformation of character models |
GB0623355D0 (en) | 2006-11-23 | 2007-01-03 | Ibm | Software tracing |
US8032875B2 (en) | 2006-11-28 | 2011-10-04 | Oracle America, Inc. | Method and apparatus for computing user-specified cost metrics in a data space profiler |
WO2008069715A1 (en) | 2006-12-06 | 2008-06-12 | Telefonaktiebolaget Lm Ericsson (Publ) | Load balanced profiling |
US20080163183A1 (en) | 2006-12-29 | 2008-07-03 | Zhiyuan Li | Methods and apparatus to provide parameterized offloading on multiprocessor architectures |
WO2008080780A1 (en) | 2007-01-05 | 2008-07-10 | International Business Machines Corporation | Recording execution information for a software application |
US8214807B2 (en) | 2007-01-10 | 2012-07-03 | International Business Machines Corporation | Code path tracking |
US9589115B2 (en) | 2007-01-18 | 2017-03-07 | Panasonic Intellectual Property Management Co., Ltd. | Obfuscation assisting apparatus |
US7500216B1 (en) | 2007-02-07 | 2009-03-03 | Altera Corporation | Method and apparatus for performing physical synthesis hill-climbing on multi-processor machines |
US20080243970A1 (en) | 2007-03-30 | 2008-10-02 | Sap Ag | Method and system for providing loitering trace in virtual machines |
ATE535868T1 (de) | 2007-04-18 | 2011-12-15 | Mediatek Inc | Verfahren und vorrichtung zur aufzeichnung von datenadressen |
US8543711B2 (en) | 2007-04-30 | 2013-09-24 | Hewlett-Packard Development Company, L.P. | System and method for evaluating a pattern of resource demands of a workload |
US20080276129A1 (en) | 2007-05-02 | 2008-11-06 | International Business Machines Corporation | Software tracing |
US8214806B2 (en) | 2007-05-09 | 2012-07-03 | International Business Machines Corporation | Iterative, non-uniform profiling method for automatically refining performance bottleneck regions in scientific code |
US20080312980A1 (en) | 2007-06-13 | 2008-12-18 | International Business Machines Corporation | Method and system for staffing and cost estimation models aligned with multi-dimensional project plans for packaged software applications |
US7698602B2 (en) | 2007-06-13 | 2010-04-13 | International Business Machines Corporation | Systems, methods and computer products for trace capability per work unit |
US8132162B2 (en) | 2007-07-05 | 2012-03-06 | International Business Machines Corporation | Runtime machine analysis of applications to select methods suitable for method level caching |
KR20090005921A (ko) | 2007-07-10 | 2009-01-14 | 삼성전자주식회사 | 대칭적 다중 프로세서 시스템에서의 로드 밸런싱 방법 및장치 |
US8276117B2 (en) | 2007-08-03 | 2012-09-25 | International Business Machines Corporation | Displaying and refactoring programs that include database statements |
US7975262B2 (en) | 2007-08-16 | 2011-07-05 | Microsoft Corporation | Error tracing with context history |
WO2009029357A2 (en) | 2007-08-24 | 2009-03-05 | Peter Anthony Crosby | Selective monitoring of software applications |
US8745606B2 (en) | 2007-09-28 | 2014-06-03 | Intel Corporation | Critical section ordering for multiple trace applications |
US8307343B2 (en) | 2007-10-19 | 2012-11-06 | Microsoft Corporation | Application and database context correlation for database application developers |
US20090125519A1 (en) | 2007-11-13 | 2009-05-14 | Intel Corporation | Device, system, and method for regulating software lock elision mechanisms |
US7430733B1 (en) | 2007-11-15 | 2008-09-30 | International Business Machines Corporation | Method for validation of binary code transformations |
US8826242B2 (en) | 2007-11-27 | 2014-09-02 | Microsoft Corporation | Data driven profiling for distributed applications |
US8527959B2 (en) | 2007-12-07 | 2013-09-03 | International Business Machines Corporation | Binary programmable method for application performance data collection |
CN101222328B (zh) | 2007-12-14 | 2010-11-03 | 西安西电捷通无线网络通信股份有限公司 | 一种实体双向鉴别方法 |
US8301755B2 (en) | 2007-12-14 | 2012-10-30 | Bmc Software, Inc. | Impact propagation in a directed acyclic graph |
US8495636B2 (en) | 2007-12-19 | 2013-07-23 | International Business Machines Corporation | Parallelizing single threaded programs by performing look ahead operation on the single threaded program to identify plurality of instruction threads prior to execution |
US8225291B2 (en) | 2008-01-04 | 2012-07-17 | International Business Machines Corporation | Automated detection of application performance bottlenecks |
US8234105B1 (en) | 2008-01-08 | 2012-07-31 | The Mathworks, Inc. | Mapping between code coverage and model coverage for a design |
US20090193402A1 (en) | 2008-01-28 | 2009-07-30 | Guy Bashkansky | Iterative Compilation Supporting Entity Instance-Specific Compiler Option Variations |
US20090199047A1 (en) | 2008-01-31 | 2009-08-06 | Yahoo! Inc. | Executing software performance test jobs in a clustered system |
JP5440935B2 (ja) | 2008-02-22 | 2014-03-12 | 日本電気株式会社 | Itシステムの挙動測定・解析システム、およびその方法 |
JPWO2009119642A1 (ja) | 2008-03-26 | 2011-07-28 | 日本電気株式会社 | サービス応答性能分析装置、方法、及びプログラム並びにそれを記録した記録媒体 |
US8117602B2 (en) | 2008-04-01 | 2012-02-14 | Kaspersky Lab, Zao | Method and system for monitoring execution performance of software program product |
US20090313600A1 (en) | 2008-06-13 | 2009-12-17 | Microsoft Corporation | Concurrent code generation |
US8245200B2 (en) | 2008-07-11 | 2012-08-14 | International Business Machines Corporation | Method, system, and apparatus for dynamically injecting logging statements into web 2.0 javascript applications |
US7958194B2 (en) | 2008-08-25 | 2011-06-07 | Massively Parallel Technologies, Inc. | System and method for parallel processing using a Type I Howard Cascade |
JP5386905B2 (ja) | 2008-09-25 | 2014-01-15 | 富士通セミコンダクター株式会社 | プロファイリング方法およびプロファイリングプログラム |
US9117094B2 (en) | 2008-10-29 | 2015-08-25 | Microsoft Technology Licensing, Llc | Data location obfuscation |
US8621184B1 (en) | 2008-10-31 | 2013-12-31 | Netapp, Inc. | Effective scheduling of producer-consumer processes in a multi-processor system |
US20100115172A1 (en) | 2008-11-04 | 2010-05-06 | Mosaid Technologies Incorporated | Bridge device having a virtual page buffer |
US7681182B1 (en) | 2008-11-06 | 2010-03-16 | International Business Machines Corporation | Including function call graphs (FCG) generated from trace analysis data within a searchable problem determination knowledge base |
US8423534B2 (en) | 2008-11-18 | 2013-04-16 | Teradata Us, Inc. | Actively managing resource bottlenecks in a database system |
US20100125838A1 (en) | 2008-11-19 | 2010-05-20 | Nokia Corporation | Method and Apparatus for Optimizing a Program |
US20100123717A1 (en) | 2008-11-20 | 2010-05-20 | Via Technologies, Inc. | Dynamic Scheduling in a Graphics Processor |
US9189233B2 (en) | 2008-11-24 | 2015-11-17 | Intel Corporation | Systems, apparatuses, and methods for a hardware and software system to automatically decompose a program to multiple parallel threads |
US8645922B2 (en) | 2008-11-25 | 2014-02-04 | Sap Ag | System and method of implementing a concurrency profiler |
EP2370887A4 (en) | 2008-12-02 | 2012-06-13 | Ab Initio Technology Llc | Visual representation of the relationship between data elements and graphical representations of data element properties |
US8359581B2 (en) | 2008-12-10 | 2013-01-22 | International Business Machines Corporation | Automatic collection of diagnostic traces in an automation framework |
US8327321B2 (en) | 2009-01-31 | 2012-12-04 | Ted J. Biggerstaff | Synthetic partitioning for imposing implementation design patterns onto logical architectures of computations |
US9323647B2 (en) | 2009-02-10 | 2016-04-26 | Sap Se | Request-based activation of debugging and tracing |
US9076125B2 (en) | 2009-02-27 | 2015-07-07 | Microsoft Technology Licensing, Llc | Visualization of participant relationships and sentiment for electronic messaging |
US8789032B1 (en) | 2009-02-27 | 2014-07-22 | Google Inc. | Feedback-directed inter-procedural optimization |
KR101581001B1 (ko) | 2009-03-30 | 2015-12-30 | 삼성전자주식회사 | 프로그램의 동적 분석 방법 및 그 장치 |
US20100257019A1 (en) | 2009-04-02 | 2010-10-07 | Microsoft Corporation | Associating user-defined descriptions with objects |
US8595327B2 (en) | 2009-04-10 | 2013-11-26 | Microsoft Corporation | Obtaining instrumentation data |
JP5428075B2 (ja) | 2009-04-17 | 2014-02-26 | 株式会社日立製作所 | 性能モニタリングシステム、ボトルネック判定方法及び管理計算機 |
US8327351B2 (en) | 2009-04-30 | 2012-12-04 | Sap Ag | Application modification framework |
US8327377B2 (en) | 2009-04-30 | 2012-12-04 | Ca, Inc. | Detecting, logging and tracking component dependencies in web service transactions |
US8423973B2 (en) | 2009-05-08 | 2013-04-16 | Ca, Inc. | Instrumenting an application with flexible tracers to provide correlation data and metrics |
US8332854B2 (en) | 2009-05-19 | 2012-12-11 | Microsoft Corporation | Virtualized thread scheduling for hardware thread optimization based on hardware resource parameter summaries of instruction blocks in execution groups |
EP2438523B1 (en) | 2009-06-01 | 2018-08-01 | EntIT Software LLC | System and method for collecting application performance data |
US10102398B2 (en) | 2009-06-01 | 2018-10-16 | Ab Initio Technology Llc | Generating obfuscated data |
US20120270900A1 (en) | 2009-07-17 | 2012-10-25 | Topo Target A/S | Novel method of treatment |
US8352907B2 (en) | 2009-08-10 | 2013-01-08 | International Business Machines Corporation | Software application recreation |
US8566804B1 (en) | 2009-08-13 | 2013-10-22 | The Mathworks, Inc. | Scheduling generated code based on target characteristics |
EP2290562A1 (en) | 2009-08-24 | 2011-03-02 | Amadeus S.A.S. | Segmented main-memory stored relational database table system with improved collaborative scan algorithm |
US8448142B2 (en) | 2009-08-25 | 2013-05-21 | International Business Machines Corporation | Incremental runtime compliance validation of renderable objects |
US9529694B2 (en) | 2009-09-14 | 2016-12-27 | Oracle International Corporation | Techniques for adaptive trace logging |
KR101645035B1 (ko) | 2009-09-22 | 2016-08-16 | 삼성전자주식회사 | 병렬 프로그래밍 조절 장치 및 방법 |
WO2011037691A1 (en) | 2009-09-25 | 2011-03-31 | National Electronics Warranty, Llc | Service plan web crawler and dynamic mapper |
US8627300B2 (en) | 2009-10-13 | 2014-01-07 | Empire Technology Development Llc | Parallel dynamic optimization |
US8856794B2 (en) | 2009-10-13 | 2014-10-07 | Empire Technology Development Llc | Multicore runtime management using process affinity graphs |
US8543907B1 (en) | 2009-10-16 | 2013-09-24 | Google Inc. | Context-sensitive optimization level selection |
US20110098973A1 (en) | 2009-10-23 | 2011-04-28 | Computer Associates Think, Inc. | Automatic Baselining Of Metrics For Application Performance Management |
US8275816B1 (en) | 2009-11-06 | 2012-09-25 | Adobe Systems Incorporated | Indexing messaging events for seeking through data streams |
US8356354B2 (en) | 2009-11-23 | 2013-01-15 | Kaspersky Lab, Zao | Silent-mode signature testing in anti-malware processing |
US8392497B2 (en) | 2009-11-25 | 2013-03-05 | Framehawk, LLC | Systems and algorithm for interfacing with a virtualized computing service over a network using a lightweight client |
US8490087B2 (en) | 2009-12-02 | 2013-07-16 | International Business Machines Corporation | System and method for transforming legacy desktop environments to a virtualized desktop model |
US8584098B2 (en) | 2009-12-04 | 2013-11-12 | Sap Ag | Component statistics for application profiling |
US8527960B2 (en) | 2009-12-04 | 2013-09-03 | Sap Ag | Combining method parameter traces with other traces |
US20110153603A1 (en) | 2009-12-17 | 2011-06-23 | Yahoo! Inc. | Time series storage for large-scale monitoring system |
US8359584B2 (en) | 2009-12-18 | 2013-01-22 | Microsoft Corporation | Debugging from a call graph |
US20110154289A1 (en) | 2009-12-18 | 2011-06-23 | Sandya Srivilliputtur Mannarswamy | Optimization of an application program |
EP2348418A1 (en) * | 2009-12-18 | 2011-07-27 | Siemens Aktiengesellschaft | Multi trace parser |
US9639446B2 (en) | 2009-12-21 | 2017-05-02 | International Business Machines Corporation | Trace monitoring |
US8336056B1 (en) | 2009-12-22 | 2012-12-18 | Gadir Omar M A | Multi-threaded system for data management |
US8645930B2 (en) | 2010-01-04 | 2014-02-04 | Apple Inc. | System and method for obfuscation by common function and common function prototype |
US8826249B2 (en) | 2010-02-18 | 2014-09-02 | Oracle International Corporation | Method and system for optimizing code for a multi-threaded application |
US20110225458A1 (en) | 2010-03-09 | 2011-09-15 | Microsoft Corporation | Generating a debuggable dump file for an operating system kernel and hypervisor |
WO2011116987A1 (en) | 2010-03-26 | 2011-09-29 | Software Diagnostics Technology Gmbh | A method for automatically generating a trace data set for a software system, a computer system, and a computer program product |
CN102222037B (zh) | 2010-04-15 | 2014-04-02 | 国际商业机器公司 | 用于定位java程序的瓶颈的方法和设备 |
US8522217B2 (en) | 2010-04-20 | 2013-08-27 | Microsoft Corporation | Visualization of runtime analysis across dynamic boundaries |
US9189367B2 (en) | 2010-04-20 | 2015-11-17 | Salesforce.Com, Inc. | Methods and systems for debugging bytecode in an on-demand service environment |
US8719804B2 (en) | 2010-05-05 | 2014-05-06 | Microsoft Corporation | Managing runtime execution of applications on cloud computing systems |
US8473925B2 (en) | 2010-05-11 | 2013-06-25 | Ca, Inc. | Conditional dynamic instrumentation of software in a specified transaction context |
US8566800B2 (en) | 2010-05-11 | 2013-10-22 | Ca, Inc. | Detection of method calls to streamline diagnosis of custom code through dynamic instrumentation |
US8726240B2 (en) | 2010-05-12 | 2014-05-13 | Salesforce.Com, Inc. | Capturing replayable information at software defect locations in a multi-tenant environment |
WO2011142720A1 (en) | 2010-05-14 | 2011-11-17 | Gabriyel Wong Chee Kien | A self-organizing and contextual graphical user interface |
CA2798759C (en) | 2010-05-19 | 2018-09-04 | Google Inc. | Bug clearing house |
US20110289485A1 (en) | 2010-05-21 | 2011-11-24 | International Business Machines Corporation | Software Trace Collection and Analysis Utilizing Direct Interthread Communication On A Network On Chip |
EP2390790A1 (en) | 2010-05-27 | 2011-11-30 | Fujitsu Limited | Profiling of software applications |
US8844042B2 (en) | 2010-06-16 | 2014-09-23 | Microsoft Corporation | System state based diagnostic scan |
US8966447B2 (en) | 2010-06-21 | 2015-02-24 | Apple Inc. | Capturing and displaying state of automated user-level testing of a graphical user interface application |
US8549532B2 (en) | 2010-07-12 | 2013-10-01 | International Business Machines Corporation | Parallel checkpointing for migration of workload partitions |
US8453123B2 (en) | 2010-07-16 | 2013-05-28 | International Business Machines Corporation | Time-based trace facility |
US20120042212A1 (en) | 2010-08-10 | 2012-02-16 | Gilbert Laurenti | Mixed Mode Processor Tracing |
US8380812B2 (en) | 2010-08-12 | 2013-02-19 | International Business Machines Corporation | Source identification for multipart content validation |
US8327373B2 (en) | 2010-08-24 | 2012-12-04 | Novell, Inc. | System and method for structuring self-provisioning workloads deployed in virtualized data centers |
WO2012031165A2 (en) | 2010-09-02 | 2012-03-08 | Zaretsky, Howard | System and method of cost oriented software profiling |
US9177041B2 (en) | 2010-09-03 | 2015-11-03 | Robert Lewis Jackson, JR. | Automated stratification of graph display |
US8713163B2 (en) | 2010-09-17 | 2014-04-29 | Microsoft Corporation | Monitoring cloud-runtime operations |
US8972940B2 (en) | 2010-09-23 | 2015-03-03 | International Business Machines Corporation | Systems and methods for identifying software performance influencers |
KR20120031834A (ko) | 2010-09-27 | 2012-04-04 | 삼성전자주식회사 | 인스트루먼테이션 장치 및 방법 |
CN103180826B (zh) | 2010-10-25 | 2017-04-05 | 起元技术有限责任公司 | 在代表计算机程序的数据流图中管理数据集对象 |
US9015676B2 (en) | 2010-10-29 | 2015-04-21 | International Business Machines Corporation | Varying removal of internal breakpoints during debugging of code |
US8583978B2 (en) | 2010-11-09 | 2013-11-12 | Cisco Technology, Inc. | Multicast message retransmission |
US8938720B2 (en) | 2010-11-30 | 2015-01-20 | Sap Se | Trace visualization for object oriented programs |
US20120151396A1 (en) | 2010-12-09 | 2012-06-14 | S Ramprasad | Rendering an optimized metrics topology on a monitoring tool |
US8997056B2 (en) | 2010-12-15 | 2015-03-31 | Hewlett-Packard Development Company, L. P. | Directed graphs pertaining to read/write operations |
KR101786871B1 (ko) | 2010-12-17 | 2017-11-15 | 한국전자통신연구원 | 원격 페이지 폴트 처리 장치 및 그 방법 |
US8843852B2 (en) | 2010-12-17 | 2014-09-23 | Orca Health, Inc. | Medical interface, annotation and communication systems |
US10203974B2 (en) | 2010-12-20 | 2019-02-12 | Microsoft Technology Licensing, Llc | Probe insertion via background virtual machine |
US8863138B2 (en) | 2010-12-22 | 2014-10-14 | Intel Corporation | Application service performance in cloud computing |
CN102567115B (zh) | 2010-12-23 | 2016-04-06 | 伊姆西公司 | 云系统中用于信息技术资源分配和利用跟踪的装置和方法 |
US9195810B2 (en) * | 2010-12-28 | 2015-11-24 | Microsoft Technology Licensing, Llc | Identifying factorable code |
US9459983B2 (en) | 2010-12-31 | 2016-10-04 | Open Invention Network, Llc | Method and apparatus of establishing customized network monitoring criteria |
US8756581B2 (en) | 2011-02-03 | 2014-06-17 | International Business Machines Corporation | Adaptive next-executing-cycle trace selection for trace-driven code optimizers |
EP2671362A2 (en) | 2011-02-04 | 2013-12-11 | OPNET Technologies, Inc. | Overhead management for event tracing |
WO2012116236A2 (en) | 2011-02-23 | 2012-08-30 | Nova Spivack | System and method for analyzing messages in a network or across networks |
US8988998B2 (en) | 2011-02-25 | 2015-03-24 | International Business Machines Corporation | Data processing environment integration control |
US8756310B2 (en) | 2011-03-09 | 2014-06-17 | International Business Machines Corporation | Comprehensive bottleneck detection in a multi-tier enterprise storage system |
US20120246303A1 (en) | 2011-03-23 | 2012-09-27 | LogRhythm Inc. | Log collection, structuring and processing |
JP5874891B2 (ja) | 2011-03-30 | 2016-03-02 | 日本電気株式会社 | プログラムテスト装置、プログラムテスト方法、およびプログラム |
US11099982B2 (en) | 2011-03-31 | 2021-08-24 | Oracle International Corporation | NUMA-aware garbage collection |
US9170917B2 (en) | 2011-04-01 | 2015-10-27 | Paypal, Inc. | Flow tracing though diverse logical and physical application and infrastructure layers/dependencies |
US8438427B2 (en) | 2011-04-08 | 2013-05-07 | Ca, Inc. | Visualizing relationships between a transaction trace graph and a map of logical subsystems |
US8380838B2 (en) | 2011-04-08 | 2013-02-19 | International Business Machines Corporation | Reduction of alerts in information technology systems |
US20120266143A1 (en) | 2011-04-12 | 2012-10-18 | Microsoft Corporation | Resource cost correlation across different subsystems |
US9092786B2 (en) | 2011-04-13 | 2015-07-28 | Digital River, Inc. | E-commerce failover system and method |
US9032375B2 (en) | 2011-04-27 | 2015-05-12 | International Business Machines Corporation | Performance bottleneck identification tool |
US20120278487A1 (en) | 2011-04-27 | 2012-11-01 | Woelfel John Harold | System and method of handling requests in a multi-homed reverse proxy |
US8856767B2 (en) | 2011-04-29 | 2014-10-07 | Yahoo! Inc. | System and method for analyzing dynamic performance of complex applications |
CN104012041B (zh) | 2011-05-24 | 2018-02-09 | 思杰系统有限公司 | 用于分析网络指标的系统和方法 |
US8533698B2 (en) | 2011-06-13 | 2013-09-10 | Microsoft Corporation | Optimizing execution of kernels |
US8756171B2 (en) | 2011-06-15 | 2014-06-17 | International Business Machines Corporation | Generating predictions from a probabilistic process model |
KR101265099B1 (ko) | 2011-06-15 | 2013-05-20 | 주식회사 터보테크 | 소프트웨어 보안 처리방법 및 기록매체 |
US8832775B2 (en) | 2011-06-17 | 2014-09-09 | Novell, Inc. | Techniques for workload spawning |
US10592825B2 (en) | 2011-06-22 | 2020-03-17 | International Business Machines Corporation | Application placement among a set of consolidation servers utilizing license cost and application workload profiles as factors |
US9170798B2 (en) | 2012-03-02 | 2015-10-27 | Vmware, Inc. | System and method for customizing a deployment plan for a multi-tier application in a cloud infrastructure |
US9015668B1 (en) | 2011-08-10 | 2015-04-21 | Interactive TKO, Inc. | Instrumentation agent for manipulating component responses in a test |
US8909996B2 (en) | 2011-08-12 | 2014-12-09 | Oracle International Corporation | Utilizing multiple storage devices to reduce write latency for database logging |
US20130086564A1 (en) | 2011-08-26 | 2013-04-04 | Cognitive Electronics, Inc. | Methods and systems for optimizing execution of a program in an environment having simultaneously parallel and serial processing capability |
US8621439B2 (en) | 2011-09-06 | 2013-12-31 | Microsoft Corporation | Modern application tracing |
US8312056B1 (en) | 2011-09-13 | 2012-11-13 | Xerox Corporation | Method and system for identifying a key influencer in social media utilizing topic modeling and social diffusion analysis |
US8918764B2 (en) | 2011-09-21 | 2014-12-23 | International Business Machines Corporation | Selective trace facility |
US9203894B1 (en) | 2011-09-26 | 2015-12-01 | Emc Corporation | Methods and systems for building an application execution map |
US9497136B1 (en) | 2011-09-28 | 2016-11-15 | Emc Corporation | Method and system for providing usage metrics to manage utilzation of cloud computing resources |
US8677331B2 (en) | 2011-09-30 | 2014-03-18 | Oracle International Corporation | Lock-clustering compilation for software transactional memory |
US8745591B2 (en) | 2011-10-19 | 2014-06-03 | Microsoft Corporation | Data flow visualization and debugging |
US20130145350A1 (en) | 2011-12-05 | 2013-06-06 | Microsoft Corporation | Efficient, large scale trace storage system |
US20130185729A1 (en) | 2012-01-13 | 2013-07-18 | Rutgers, The State University Of New Jersey | Accelerating resource allocation in virtualized environments using workload classes and/or workload signatures |
US8732291B2 (en) | 2012-01-13 | 2014-05-20 | Accenture Global Services Limited | Performance interference model for managing consolidated workloads in QOS-aware clouds |
US8819653B2 (en) | 2012-01-30 | 2014-08-26 | Cisco Technology, Inc. | Automated improvement of executable applications based on evaluating independent execution heuristics |
KR20130093995A (ko) | 2012-02-15 | 2013-08-23 | 한국전자통신연구원 | 계층적 멀티코어 프로세서의 성능 최적화 방법 및 이를 수행하는 멀티코어 프로세서 시스템 |
US9251039B2 (en) | 2012-02-17 | 2016-02-02 | Microsoft Technology Licensing, Llc | Remote debugging as a service |
US9396037B2 (en) | 2012-02-27 | 2016-07-19 | Microsoft Technology Licensing, Llc | Model-based data pipeline system optimization |
US9608893B2 (en) | 2012-02-27 | 2017-03-28 | The Boeing Company | Methods and systems for parsing data objects |
US9058198B2 (en) | 2012-02-29 | 2015-06-16 | Red Hat Inc. | System resource sharing in a multi-tenant platform-as-a-service environment in a cloud computing system |
US9032369B2 (en) | 2012-03-26 | 2015-05-12 | Software Ag | Systems and/or methods for executing appropriate tests based on code modifications using live, distributed, real-time cache and feedback loop |
US9183108B2 (en) * | 2012-03-27 | 2015-11-10 | Microsoft Technology Licensing, Llc | Logical grouping of profile data |
US8495598B2 (en) | 2012-05-01 | 2013-07-23 | Concurix Corporation | Control flow graph operating system configuration |
US8726255B2 (en) | 2012-05-01 | 2014-05-13 | Concurix Corporation | Recompiling with generic to specific replacement |
US8615766B2 (en) | 2012-05-01 | 2013-12-24 | Concurix Corporation | Hybrid operating system |
US8595743B2 (en) | 2012-05-01 | 2013-11-26 | Concurix Corporation | Network aware process scheduling |
US8650538B2 (en) | 2012-05-01 | 2014-02-11 | Concurix Corporation | Meta garbage collection for functional code |
US20120222043A1 (en) | 2012-05-01 | 2012-08-30 | Concurix Corporation | Process Scheduling Using Scheduling Graph to Minimize Managed Elements |
US9417935B2 (en) | 2012-05-01 | 2016-08-16 | Microsoft Technology Licensing, Llc | Many-core process scheduling to maximize cache usage |
US20120324454A1 (en) | 2012-05-04 | 2012-12-20 | Concurix Corporation | Control Flow Graph Driven Operating System |
WO2013184133A1 (en) | 2012-06-08 | 2013-12-12 | Hewlett-Packard Development Company, L.P. | Cloud application deployment portability |
EP2859439A4 (en) | 2012-06-08 | 2016-03-30 | Hewlett Packard Development Co | CLOUD APPLICATION DEPLOYMENT |
US8881125B2 (en) | 2012-06-11 | 2014-11-04 | International Business Machines Corporation | Indirect software performance analysis |
US20120317421A1 (en) | 2012-06-19 | 2012-12-13 | Concurix Corporation | Fingerprinting Executable Code |
US9047196B2 (en) | 2012-06-19 | 2015-06-02 | Concurix Corporation | Usage aware NUMA process scheduling |
US9146767B2 (en) | 2012-06-19 | 2015-09-29 | Raytheon Company | Secure cloud hypervisor monitor |
US8700838B2 (en) | 2012-06-19 | 2014-04-15 | Concurix Corporation | Allocating heaps in NUMA systems |
CN102789409A (zh) | 2012-06-29 | 2012-11-21 | 惠州市德赛西威汽车电子有限公司 | 一种基于数据通讯监测的嵌入式系统自动化模块测试方法 |
US8793669B2 (en) | 2012-07-17 | 2014-07-29 | Concurix Corporation | Pattern extraction from executable code in message passing environments |
US9575813B2 (en) | 2012-07-17 | 2017-02-21 | Microsoft Technology Licensing, Llc | Pattern matching process scheduler with upstream optimization |
US8707326B2 (en) | 2012-07-17 | 2014-04-22 | Concurix Corporation | Pattern matching process scheduler in message passing environment |
US9979797B2 (en) | 2012-07-27 | 2018-05-22 | Nokia Technologies Oy | Methods and apparatuses for facilitating utilization of cloud services |
US9262231B2 (en) | 2012-08-07 | 2016-02-16 | Advanced Micro Devices, Inc. | System and method for modifying a hardware configuration of a cloud computing system |
US9152532B2 (en) | 2012-08-07 | 2015-10-06 | Advanced Micro Devices, Inc. | System and method for configuring a cloud computing system with a synthetic test workload |
US8966462B2 (en) | 2012-08-10 | 2015-02-24 | Concurix Corporation | Memory management parameters derived from system modeling |
US20130080760A1 (en) | 2012-08-10 | 2013-03-28 | Concurix Corporation | Execution Environment with Feedback Loop |
US9043788B2 (en) | 2012-08-10 | 2015-05-26 | Concurix Corporation | Experiment manager for manycore systems |
US9003381B2 (en) | 2012-08-14 | 2015-04-07 | Derek J. Conrod | Context-specific optimized code |
US9135093B2 (en) | 2012-08-31 | 2015-09-15 | Sap Se | Event-driven approach for collecting monitoring data of messaging systems |
US20130085882A1 (en) | 2012-09-18 | 2013-04-04 | Concurix Corporation | Offline Optimization of Computer Software |
US8789030B2 (en) | 2012-09-18 | 2014-07-22 | Concurix Corporation | Memoization from offline analysis |
US9122841B2 (en) | 2012-10-16 | 2015-09-01 | Sap Se | Providing remote application logs for cloud applications |
US9378059B2 (en) | 2012-10-19 | 2016-06-28 | Argyle Data, Inc. | Multi-threaded, lockless data parallelization |
US8839204B2 (en) | 2012-11-08 | 2014-09-16 | Concurix Corporation | Determination of function purity for memoization |
US8656134B2 (en) | 2012-11-08 | 2014-02-18 | Concurix Corporation | Optimized memory configuration deployed on executing code |
US20130074057A1 (en) | 2012-11-08 | 2013-03-21 | Concurix Corporation | Selecting Functions for Memoization Analysis |
US8656378B2 (en) | 2012-11-08 | 2014-02-18 | Concurix Corporation | Memoization configuration file consumed at compile time |
US9262416B2 (en) | 2012-11-08 | 2016-02-16 | Microsoft Technology Licensing, Llc | Purity analysis using white list/black list analysis |
US8826254B2 (en) | 2012-11-08 | 2014-09-02 | Concurix Corporation | Memoizing with read only side effects |
US8752021B2 (en) | 2012-11-08 | 2014-06-10 | Concurix Corporation | Input vector analysis for memoization estimation |
US8656135B2 (en) | 2012-11-08 | 2014-02-18 | Concurix Corporation | Optimized memory configuration deployed prior to execution |
US8694574B2 (en) | 2012-11-08 | 2014-04-08 | Concurix Corporation | Optimized settings in a configuration database with boundaries |
US8607018B2 (en) | 2012-11-08 | 2013-12-10 | Concurix Corporation | Memory usage configuration based on observations |
US8752034B2 (en) | 2012-11-08 | 2014-06-10 | Concurix Corporation | Memoization configuration file consumed at runtime |
WO2014084819A1 (en) | 2012-11-28 | 2014-06-05 | Hewlett-Packard Development Company, L.P. | Determining at least one cost factor associated with using the cloud to provide an application component |
US9021262B2 (en) | 2013-01-25 | 2015-04-28 | Concurix Corporation | Obfuscating trace data |
US9207969B2 (en) | 2013-01-25 | 2015-12-08 | Microsoft Technology Licensing, Llc | Parallel tracing for performance and detail |
US8954546B2 (en) | 2013-01-25 | 2015-02-10 | Concurix Corporation | Tracing with a workload distributor |
US20140025572A1 (en) | 2013-01-25 | 2014-01-23 | Concurix Corporation | Tracing as a Service |
US9658941B2 (en) | 2013-01-28 | 2017-05-23 | Rackspace Us, Inc. | Methods and systems of function-specific tracing |
US9135145B2 (en) | 2013-01-28 | 2015-09-15 | Rackspace Us, Inc. | Methods and systems of distributed tracing |
US9256969B2 (en) | 2013-02-01 | 2016-02-09 | Microsoft Technology Licensing, Llc | Transformation function insertion for dynamically displayed tracer data |
US20130232433A1 (en) | 2013-02-01 | 2013-09-05 | Concurix Corporation | Controlling Application Tracing using Dynamic Visualization |
US20130232452A1 (en) | 2013-02-01 | 2013-09-05 | Concurix Corporation | Force Directed Graph with Time Series Data |
US20140019879A1 (en) | 2013-02-01 | 2014-01-16 | Concurix Corporation | Dynamic Visualization of Message Passing Computation |
US9323863B2 (en) | 2013-02-01 | 2016-04-26 | Microsoft Technology Licensing, Llc | Highlighting of time series data on force directed graph |
US9021447B2 (en) | 2013-02-12 | 2015-04-28 | Concurix Corporation | Application tracing by distributed objectives |
US8843901B2 (en) | 2013-02-12 | 2014-09-23 | Concurix Corporation | Cost analysis for selecting trace objectives |
US8924941B2 (en) | 2013-02-12 | 2014-12-30 | Concurix Corporation | Optimization analysis using similar frequencies |
US20130283281A1 (en) | 2013-02-12 | 2013-10-24 | Concurix Corporation | Deploying Trace Objectives using Cost Analyses |
US20130283102A1 (en) | 2013-02-12 | 2013-10-24 | Concurix Corporation | Deployment of Profile Models with a Monitoring Agent |
US8997063B2 (en) | 2013-02-12 | 2015-03-31 | Concurix Corporation | Periodicity optimization in an automated tracing system |
US20130227529A1 (en) | 2013-03-15 | 2013-08-29 | Concurix Corporation | Runtime Memory Settings Derived from Trace Data |
US8966452B2 (en) | 2013-04-20 | 2015-02-24 | Concurix Corporation | User interaction analysis of tracer data for configuring an application tracer |
US20130283242A1 (en) | 2013-04-20 | 2013-10-24 | Concurix Corporation | Tracing Closures in a Callback Environment |
US20140317604A1 (en) | 2013-04-20 | 2014-10-23 | Concurix Corporation | Real Time Analysis of Tracer Summaries to Change Tracer Behavior |
US20140013306A1 (en) | 2013-04-20 | 2014-01-09 | Concurix Corporation | Computer Load Generator Marketplace |
US20140317603A1 (en) | 2013-04-20 | 2014-10-23 | Concurix Corporation | Multiple Tracer Configurations Applied on a Function-by-Function Level |
US8978016B2 (en) | 2013-04-20 | 2015-03-10 | Concurix Corporation | Error list and bug report analysis for configuring an application tracer |
US20130282545A1 (en) | 2013-04-20 | 2013-10-24 | Concurix Corporation | Marketplace for Monitoring Services |
US9021445B2 (en) | 2013-04-20 | 2015-04-28 | Concurix Corporation | Tracer list for automatically controlling tracer behavior |
US20140013308A1 (en) | 2013-04-20 | 2014-01-09 | Concurix Corporation | Application Development Environment with Services Marketplace |
US9575874B2 (en) | 2013-04-20 | 2017-02-21 | Microsoft Technology Licensing, Llc | Error list and bug report analysis for configuring an application tracer |
US20140189652A1 (en) | 2013-05-21 | 2014-07-03 | Concurix Corporation | Filtering and Transforming a Graph Representing an Application |
US8990777B2 (en) | 2013-05-21 | 2015-03-24 | Concurix Corporation | Interactive graph for navigating and monitoring execution of application code |
US20140189650A1 (en) | 2013-05-21 | 2014-07-03 | Concurix Corporation | Setting Breakpoints Using an Interactive Graph Representing an Application |
US9734040B2 (en) | 2013-05-21 | 2017-08-15 | Microsoft Technology Licensing, Llc | Animated highlights in a graph representing an application |
US9547599B2 (en) | 2013-07-26 | 2017-01-17 | Futurewei Technologies, Inc. | System and method for predicting false sharing |
US9311213B2 (en) | 2013-09-04 | 2016-04-12 | Microsoft Technology Licensing, Llc | Module database with tracing options |
US9298588B2 (en) | 2013-09-04 | 2016-03-29 | Microsoft Technology Licensing, Llc | Tracing system for application and module tracing |
US9292415B2 (en) | 2013-09-04 | 2016-03-22 | Microsoft Technology Licensing, Llc | Module specific tracing in a shared module environment |
CN105765528B (zh) | 2013-11-13 | 2019-09-24 | 微软技术许可有限责任公司 | 具有可配置原点定义的应用执行路径跟踪的方法、系统和介质 |
US9459849B2 (en) | 2014-01-17 | 2016-10-04 | International Business Machines Corporation | Adaptive cloud aware just-in-time (JIT) compilation |
-
2014
- 2014-03-27 CN CN201480062439.5A patent/CN105765528B/zh active Active
- 2014-03-27 US US15/036,325 patent/US9772927B2/en active Active
- 2014-03-27 EP EP14862130.3A patent/EP3069241B1/en not_active Not-in-force
- 2014-03-27 WO PCT/IB2014/060240 patent/WO2015071778A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
EP3069241A4 (en) | 2017-06-21 |
US20160283345A1 (en) | 2016-09-29 |
EP3069241A1 (en) | 2016-09-21 |
EP3069241B1 (en) | 2018-08-15 |
CN105765528A (zh) | 2016-07-13 |
US9772927B2 (en) | 2017-09-26 |
WO2015071778A1 (en) | 2015-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105765528B (zh) | 具有可配置原点定义的应用执行路径跟踪的方法、系统和介质 | |
CN105765560B (zh) | 基于多次跟踪执行的软件组件推荐 | |
CN105283851B (zh) | 用于选择跟踪目标的成本分析 | |
CN111756575B (zh) | 存储服务器的性能分析方法及装置、电子设备 | |
CN110741354B (zh) | 呈现代码实体调用之间的差异 | |
CN105283848A (zh) | 用分布式目标来进行应用跟踪 | |
CN105122212A (zh) | 自动化跟踪系统中的周期性优化 | |
CN105283866A (zh) | 使用相似频率的优化分析 | |
WO2014074164A1 (en) | Memoizing with read only side effects | |
WO2014074166A1 (en) | Selecting functions for memoization analysis | |
CN102236549A (zh) | 跨动态边界的运行时分析的可视化 | |
US12045676B2 (en) | Automation solutions for event logging and debugging on Kubernetes | |
CN102402479B (zh) | 用于静态分析的中间表示结构 | |
CN114090838B (zh) | 大数据可视化展示的方法、系统、电子装置和存储介质 | |
CN113868126A (zh) | 应用调试方法、装置、设备的存储介质 | |
Trautsch et al. | Adressing problems with external validity of repository mining studies through a smart data platform | |
CN105765561A (zh) | 根据跟踪数据的生产对比开发使用的确定 | |
CN113051171A (zh) | 接口测试方法、装置、设备及存储介质 | |
CN114048024A (zh) | 任务部署方法、装置、设备、存储介质及产品 | |
CN115033876A (zh) | 日志处理方法、日志处理装置、计算机设备及存储介质 | |
EP2972880B1 (en) | Kernel functionality checker | |
CN115481025A (zh) | 自动化测试的脚本录制方法、装置、计算机设备及介质 | |
US11960560B1 (en) | Methods for analyzing recurring accessibility issues with dynamic web site behavior and devices thereof | |
Gill et al. | ProvFL: Client-Driven Interpretability of Global Model Predictions in Federated Learning | |
CN104216690A (zh) | 网页活动的处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |