Patents by Inventor Peter Anthony Crosby
Peter Anthony Crosby has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 9549030Abstract: The present invention relates to correlating requests between a client and a server to a particular transaction. In one embodiment, transactions in a system of clients and servers are monitored and traced. From this information, a context comprising sets or groupings of transaction call sequences are determined. For example, a sequence of method calls on a client process is traced to a socket carrying data for transmission of a request message to a server. In response to this request message, the server then executes a set of method calls that can be correlated to the request message and the socket. This set of actions is considered part of a causally related grouping, and thus, associated together. In one embodiment, HTTP requests from a client may be comprise a unique custom header that is readily identified and traced. For other protocols, a client socket is associated with a corresponding server socket or to data received over a socket receive call.Type: GrantFiled: February 3, 2012Date of Patent: January 17, 2017Assignee: RIVERBED TECHNOLOGY, INC.Inventors: Patrick Malloy, Peter Anthony Crosby, Robert Meagher
-
Patent number: 9268624Abstract: Embodiments provide systems, methods, and computer program products for monitoring application performance in multithreaded environments. Monitoring data may be inserted into data structures that propagate and persist between threads involved in a processing event. Data related to specific methods executing on each thread may be output to a trace file. The trace file may be analyzed for application performance by associating the threads that contain the same tracking data from the propagated data structure.Type: GrantFiled: August 13, 2013Date of Patent: February 23, 2016Assignee: RIVERBED TECHNOLOGY, INC.Inventors: Peter Anthony Crosby, Robert Meagher
-
Patent number: 9189364Abstract: An application monitoring system autonomously selects routines for performance monitoring based on characteristics of the content of the routines. These characteristics are preferably related to aspects of routines that are likely candidates for performance improvement, such as repetitive loops, event waits, synchronized blocks, and on. Routines that appear to be relatively un-improvable are excluded from initial monitoring, and routines that are subsequently determined to be relatively un-improvable, based on performance analysis and/or user feedback, are excluded from future monitoring. The determination of each routine's candidacy for monitoring is maintained over time, so that each subsequent monitoring session need not repeat the determinations. Changed routines are routinely re-monitored and/or re-assessed to affirm or modify the routine's candidacy for subsequent monitoring.Type: GrantFiled: July 23, 2013Date of Patent: November 17, 2015Assignee: RIVERBED TECHNOLOGY, INC.Inventor: Peter Anthony Crosby
-
Patent number: 9137136Abstract: Embodiments provide methods for managing data generated by software transactions, such as event tracing software. In one embodiment, data generated by event tracing software is monitored. The throughput of the data generated may then be modulated based on various criteria, such as a target data rate. The throughput target may be specified on a per-system basis or individual basis. Based on the throughput, the level of detail recorded is modulated. Individual processes may determine a limit or quota depending on their contribution to the throughput. In one embodiment, the method calls for a trace are modified with different property specifications to meet a desired throughput of event tracing data.Type: GrantFiled: February 3, 2012Date of Patent: September 15, 2015Assignee: RIVERBED TECHNOLOGY, INC.Inventors: Patrick Malloy, Peter Anthony Crosby, Robert Meagher
-
Patent number: 9110780Abstract: The performance of a monitored system is profiled based on sampling a portion of its operations. In one embodiment, the monitored system allocates memory for objects created as instances of classes and automatically performs regular garbage collection to reclaim memory. A variety of sampling techniques are used to minimize the impact on the performance of the monitored system. Characteristic memory utilization patterns can then be estimated for classes based on the samples. The patterns may be presented to a user for review and analysis. Characteristics of the monitored system's performance may be presented in an interactive interface that allows the user to trace the cause of the presented memory utilization patterns, and provides statistics regarding memory allocation and release to guide the user in this analysis.Type: GrantFiled: January 21, 2013Date of Patent: August 18, 2015Assignee: RIVERBED TECHNOLOGY, INC.Inventors: Peter Anthony Crosby, Robert Meagher, Patrick J. Malloy
-
Publication number: 20140136691Abstract: Embodiments provide systems, methods, and computer program products for monitoring application performance in multithreaded environments. Monitoring data may be inserted into data structures that propagate and persist between threads involved in a processing event. Data related to specific methods executing on each thread may be output to a trace file. The trace file may be analyzed for application performance by associating the threads that contain the same tracking data from the propagated data structure.Type: ApplicationFiled: August 13, 2013Publication date: May 15, 2014Applicant: Riverbed Technology, Inc.Inventors: Peter Anthony CROSBY, Robert Meagher
-
Publication number: 20140129793Abstract: The performance of a monitored system is profiled based on sampling a portion of its operations. In one embodiment, the monitored system allocates memory for objects created as instances of classes and automatically performs regular garbage collection to reclaim memory. A variety of sampling techniques are used to minimize the impact on the performance of the monitored system. Characteristic memory utilization patterns can then be estimated for classes based on the samples. The patterns may be presented to a user for review and analysis. Characteristics of the monitored system's performance may be presented in an interactive interface that allows the user to trace the cause of the presented memory utilization patterns, and provides statistics regarding memory allocation and release to guide the user in this analysis.Type: ApplicationFiled: January 21, 2013Publication date: May 8, 2014Applicant: Riverbed Technology, Inc.Inventors: Peter Anthony Crosby, Robert Meagher, Patrick J. Malloy
-
Publication number: 20140013310Abstract: Au application monitoring system autonomously selects routines for performance monitoring based on characteristics of the content of the routines. These characteristics are preferably related to aspects of routines that are likely candidates for performance improvement, such as repetitive loops, event waits, synchronized blocks, and on. Routines that appear to be relatively un-improvable are excluded from initial monitoring, and routines that are subsequently determined to be relatively un-improvable, based on performance analysis and/or user feedback, are excluded from future monitoring. The determination of each routine's candidacy for monitoring is maintained over time, so that each subsequent monitoring session need not repeat the determinations. Changed routines are routinely re-monitored and/or re-assessed to affirm or modify the routine's candidacy for subsequent monitoring.Type: ApplicationFiled: July 23, 2013Publication date: January 9, 2014Applicant: Riverbed Technology, Inc.Inventor: Peter Anthony CROSBY
-
Publication number: 20130205009Abstract: The present invention relates to managing data generated by software transactions, such as event tracing software. In one embodiment, data generated by event tracing software is monitored. The throughput of the data generated may then be modulated based on various criteria, such as a target data rate. The throughput target may be specified on a per-system basis or individual basis. Based on the throughput, the level of detail recorded is modulated. Individual processes may determine a limit or quota depending on their contribution to the throughput. In one embodiment, the method calls for a trace are modified with different property specifications to meet a desired throughput of event tracing data.Type: ApplicationFiled: February 21, 2012Publication date: August 8, 2013Applicant: OPNET Technologies, Inc.Inventors: Patrick MALLOY, Peter Anthony Crosby, Robert Meagher
-
Patent number: 8495577Abstract: An application monitoring system autonomously selects routines for performance monitoring based on characteristics of the content of the routines. These characteristics are preferably related to aspects of routines that are likely candidates for performance improvement, such as repetitive loops, event waits, synchronized blocks, and on. Routines that appear to be relatively un-improvable are excluded from initial monitoring, and routines that are subsequently determined to be relatively un-improvable, based on performance analysis and/or user feedback, are excluded from future monitoring. The determination of each routine's candidacy for monitoring is maintained over time, so that each subsequent monitoring session need not repeat the determinations. Changed routines are routinely re-monitored and/or re-assessed to affirm or modify the routine's candidacy for subsequent monitoring.Type: GrantFiled: July 18, 2008Date of Patent: July 23, 2013Assignee: Riverbed Technology, Inc.Inventor: Peter Anthony Crosby
-
Publication number: 20130145015Abstract: The present invention relates to managing data generated by software transactions, such as event tracing software. In one embodiment, data generated by event tracing software is monitored. The throughput of the data generated may then be modulated based on various criteria, such as a target data rate. The throughput target may be specified on a per-system basis or individual basis. Based on the throughput, the level of detail recorded is modulated. Individual processes may determine a limit or quota depending on their contribution to the throughput. In one embodiment, the method calls for a trace are modified with different property specifications to meet a desired throughput of event tracing data.Type: ApplicationFiled: February 3, 2012Publication date: June 6, 2013Applicant: OPNET TECHNOLOGIES, INC.Inventors: Patrick MALLOY, Peter Anthony CROSBY, Robert MEAGHER
-
Patent number: 8359450Abstract: An application records memory allocations and releases as they occur over time, and an analysis system presents characteristic memory utilization patterns to a user for review and analysis. A variety of sampling techniques are used to minimize the impact of this memory utilization monitoring on the performance of the application, and the analysis system is configured to estimate the overall memory utilization based on these samples. Because these samples of the memory allocations are taken continuously as the application is running, the analysis system can provide visualizations of the memory utilization patterns that allow a user to easily recognize anomalous behavior. The analysis system includes an interactive interface that allows the user to trace the cause of the presented memory utilization patterns, and provides statistics regarding memory allocation and release to guide the user in this analysis.Type: GrantFiled: February 13, 2010Date of Patent: January 22, 2013Assignee: OPNET Technologies, Inc.Inventors: Peter Anthony Crosby, Robert Meagher, Patrick J. Malloy
-
Publication number: 20120246287Abstract: The present invention relates to correlating requests between a client and a server to a particular transaction. In one embodiment, transactions in a system of clients and servers are monitored and traced. From this information, a context comprising sets or groupings of transaction call sequences are determined. For example, a sequence of method calls on a client process is traced to a socket carrying data for transmission of a request message to a server. In response to this request message, the server then executes a set of method calls that can be correlated to the request message and the socket. This set of actions is considered part of a causally related grouping, and thus, associated together. In one embodiment, HTTP requests from a client may be comprise a unique custom header that is readily identified and traced. For other protocols, a client socket is associated with a corresponding server socket or to data received over a socket receive call.Type: ApplicationFiled: February 3, 2012Publication date: September 27, 2012Applicant: OPNET TECHNOLOGIES, INC.Inventors: Patrick MALLOY, Peter Anthony CROSBY, Robert MEAGHER
-
Publication number: 20100211754Abstract: An application records memory allocations and releases as they occur over time, and an analysis system presents characteristic memory utilization patterns to a user for review and analysis. A variety of sampling techniques are used to minimize the impact of this memory utilization monitoring on the performance of the application, and the analysis system is configured to estimate the overall memory utilization based on these samples. Because these samples of the memory allocations are taken continuously as the application is running, the analysis system can provide visualizations of the memory utilization patterns that allow a user to easily recognize anomalous behavior. The analysis system includes an interactive interface that allows the user to trace the cause of the presented memory utilization patterns, and provides statistics regarding memory allocation and release to guide the user in this analysis.Type: ApplicationFiled: February 13, 2010Publication date: August 19, 2010Inventors: Peter Anthony Crosby, Robert Meagher, Patrick J. Malloy
-
Publication number: 20090055802Abstract: An application monitoring system autonomously selects routines for performance monitoring based on characteristics of the content of the routines. These characteristics are preferably related to aspects of routines that are likely candidates for performance improvement, such as repetitive loops, event waits, synchronized blocks, and on. Routines that appear to be relatively un-improvable are excluded from initial monitoring, and routines that are subsequently determined to be relatively un-improvable, based on performance analysis and/or user feedback, are excluded from future monitoring. The determination of each routine's candidacy for monitoring is maintained over time, so that each subsequent monitoring session need not repeat the determinations. Changed routines are routinely re-monitored and/or re-assessed to affirm or modify the routine's candidacy for subsequent monitoring.Type: ApplicationFiled: July 18, 2008Publication date: February 26, 2009Inventor: Peter Anthony CROSBY