Patents by Inventor Piotr Findeisen
Piotr Findeisen 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: 9460225Abstract: Systems and methods are provided for collecting application performance data. The system (100) includes a server (110) for hosting a server-side application (120). An instrumentation module (130) is included on the server. The instrumentation module can selectively instrument functions (125) of the server-side application to obtain instrumented function operation data. The instrumentation module can also maintain an instrumented function call stack (190) for each application thread. A sampling module (140) is included on the server. The sampling module can sample application threads of the server-side application to obtain sampled function operation data. The sampling module can sample application threads based on at least one of an age of a timestamp obtained through instrumentation and a determination of which threads are executing server requests based on emptiness of the stack.Type: GrantFiled: June 1, 2009Date of Patent: October 4, 2016Assignee: Hewlett Packard Enterprise Development LPInventor: Piotr Findeisen
-
Patent number: 9009729Abstract: A technique includes inserting (204) code (119) into an application (116) as the application (116) is executing on a computer (100). The code (119) causes the application (116) to communicate with a monitoring tool (117) about an inter-application message that is associated with a server request that is provided by a client (100). The technique includes using the monitoring tool (208) to operate on a correlation token that is appended to the message to track processing of the server request.Type: GrantFiled: June 30, 2010Date of Patent: April 14, 2015Assignee: Hewlett-Packard Development Company, L.P.Inventors: Piotr Findeisen, Constantinos Papadopoulos
-
Patent number: 8769505Abstract: A method disclosed herein provides for receiving information relating to an event that occurred while processing server request from a compiled code snippet inserted into a compiled computer program, calculating diagnostic information relating to execution of the server request based on the received information, and providing the diagnostic information. Alternatively, a computer-readable medium, storing a set of instructions, is provided for, the instructions, when executed by a processor perform a method including, while a server request is being executed, receiving information from a compiled code snippet, in inserted into a compiled computer program, the received information relating to a thread starting to process the server request.Type: GrantFiled: January 24, 2011Date of Patent: July 1, 2014Assignee: Hewlett-Packard Development Company, L.P.Inventor: Piotr Findeisen
-
Publication number: 20140149574Abstract: Examples disclosed herein relate to generating a generalized uniform resource identifier (URI). Examples include generating a generalized URI for a given URI. In examples disclosed herein, the generalized URI may include a generic value. Also, in examples disclosed herein, the generalized URI may include the generic value in a segment position corresponding to a variable segment position of the given URI.Type: ApplicationFiled: November 28, 2012Publication date: May 29, 2014Applicant: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.Inventors: Piotr Findeisen, Michael Haeuptle
-
Publication number: 20130086595Abstract: A technique includes inserting (204) code (119) into an application (116) as the application (116) is executing on a computer (100). The code (119) causes the application (116) to communicate with a monitoring tool (117) about an inter-application message that is associated with a server request that is provided by a client (100). The technique includes using the monitoring tool (208) to operate on a correlation token that is appended to the message to track processing of the server request.Type: ApplicationFiled: June 30, 2010Publication date: April 4, 2013Applicant: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.Inventors: Piotr Findeisen, Constantinos Papadopoulos
-
Publication number: 20120192004Abstract: A method disclosed herein provides for receiving information relating to an event that occurred while processing server request from a compiled code snippet inserted into a compiled computer program, calculating diagnostic information relating to execution of the server request based on the received information, and providing the diagnostic information. Alternatively, a computer-readable medium, storing a set of instructions, is provided for, the instructions, when executed by a processor perform a method including, while a server request is being executed, receiving information from a compiled code snippet, in inserted into a compiled computer program, the received information relating to a thread starting to process the server request.Type: ApplicationFiled: January 24, 2011Publication date: July 26, 2012Inventor: Piotr Findeisen
-
Publication number: 20120079108Abstract: Systems and methods are provided for collecting application performance data. The system (100) includes a server (110) for hosting a server-side application (120). An instrumentation module (130) is included on the server. The instrumentation module can selectively instrument functions (125) of the server-side application to obtain instrumented function operation data. The instrumentation module can also maintain an instrumented function call stack (190) for each application thread. A sampling module (140) is included on the server. The sampling module can sample application threads of the server-side application to obtain sampled function operation data. The sampling module can sample application threads based on at least one of an age of a timestamp obtained through instrumentation and a determination of which threads are executing server requests based on emptiness of the stack.Type: ApplicationFiled: June 1, 2009Publication date: March 29, 2012Inventor: Piotr Findeisen
-
Patent number: 8046760Abstract: One embodiment disclosed relates to a method of finding lock contention in an application with concurrent threads. Status data is retrieved by periodically sampling status of said threads. The periodically-sampled status data is accumulated, and the lock contention is statistically found from the accumulated status data. The status data may include location information that is usable to pinpoint the lock contention.Type: GrantFiled: July 9, 2004Date of Patent: October 25, 2011Assignee: Hewlett-Packard Development Company, L.P.Inventors: David Isaiah Seidman, Piotr Findeisen
-
Patent number: 8037477Abstract: A method for detecting increasing memory consumption of an application program is provided. The method includes monitoring memory consumption at an allocation site and updating an allocation site threshold value each time the memory consumption increases. The method further includes increasing a growth period counter each time the allocation site threshold value increases in a current time period. The method yet also includes comparing the growth period counter to a growth threshold. The method yet further includes, if the growth period counter is greater or equal to the growth threshold, computing an elapse time, which is the time between the current time period and a previous growth period. The method moreover includes comparing the elapse time to a time threshold. The method in addition includes, if the elapse time is less than the time threshold, reporting the allocation site as a potential source of the increasing memory consumption.Type: GrantFiled: January 23, 2007Date of Patent: October 11, 2011Assignee: Hewlett-Packard Development Company, L.P.Inventors: Piotr Findeisen, Yanhua Li
-
Patent number: 7765528Abstract: One embodiment relates to a method for identifying sources of memory retention in an executing application. A size of a set of objects is tracked over multiple periods. A period is determined to be a growth period if the size for the set of objects increases above a previous maximum size, and the number of growth periods is counted. The set of objects is flagged as having potential undesired object retention (a memory leak) if the number of growth periods is greater than a threshold number. Other embodiments are also disclosed.Type: GrantFiled: September 21, 2005Date of Patent: July 27, 2010Assignee: Hewlett-Packard Development Company, L.P.Inventors: Piotr Findeisen, Yanhua Li, Joseph A. Coha, David I. Seidman
-
Patent number: 7743380Abstract: Embodiments of the invention distribute profiling responsibilities for a clustered application to various instances of the application that generally run on different computer hosts. In an embodiment, the profiling responsibility is measured in terms of metrics wherein each profiling agent of an instance collects metrics about that instance. The metrics are prioritized and assigned to instances such that the highest priority metrics are assigned if possible. Each metric is associated with an expected performance overhead, and the assignment of metrics to an instance is done such that the performance overhead on that instance and/or host does not exceed a threshold. Other embodiments are also disclosed.Type: GrantFiled: January 21, 2005Date of Patent: June 22, 2010Assignee: Hewlett-Packard Development Company, L.P.Inventors: David Isaiah Seidman, Piotr Findeisen
-
Patent number: 7434206Abstract: Embodiments of the invention relate to identifying sources of memory leaks. In an embodiment, an agent collects information related to object allocations and de-allocations in accordance with a sampling period, and, based on the relationship between object allocations and de-allocations, the agent analyzes the data and reports the results. Other embodiments are also disclosed.Type: GrantFiled: March 10, 2005Date of Patent: October 7, 2008Assignee: Hewlett-Packard Development Company, L.P.Inventors: David Isaiah Seidman, Piotr Findeisen
-
Patent number: 7426731Abstract: Elapsed times between execution points of a thread are determined based on start times and stop times associated with the execution points. For each elapsed time, it is determined whether the thread was idle during the elapsed time by comparison of the elapsed time to a first threshold value. Each elapsed time is reduced to a selected value during which the thread was idle. A value indicative of processor usage by the thread is determined as a function of the elapsed times.Type: GrantFiled: March 22, 2004Date of Patent: September 16, 2008Assignee: Hewlett-Packard Development Company, L.P.Inventor: Piotr Findeisen
-
Publication number: 20080178189Abstract: A method for detecting increasing memory consumption of an application program is provided. The method includes monitoring memory consumption at an allocation site and updating an allocation site threshold value each time the memory consumption increases. The method further includes increasing a growth period counter each time the allocation site threshold value increases in a current time period. The method yet also includes comparing the growth period counter to a growth threshold. The method yet further includes, if the growth period counter is greater or equal to the growth threshold, computing an elapse time, which is the time between the current time period and a previous growth period. The method moreover includes comparing the elapse time to a time threshold. The method in addition includes, if the elapse time is less than the time threshold, reporting the allocation site as a potential source of the increasing memory consumption.Type: ApplicationFiled: January 23, 2007Publication date: July 24, 2008Inventors: Piotr Findeisen, Yanhua Li
-
Publication number: 20070067758Abstract: One embodiment relates to a method for identifying sources of memory retention in an executing application. A size of a set of objects is tracked over multiple periods. A period is determined to be a growth period if the size for the set of objects increases above a previous maximum size, and the number of growth periods is counted. The set of objects is flagged as having potential undesired object retention (a memory leak) if the number of growth periods is greater than a threshold number. Other embodiments are also disclosed.Type: ApplicationFiled: September 21, 2005Publication date: March 22, 2007Inventors: Piotr Findeisen, Yanhua Li, Joseph Coha, David Seidman
-
Publication number: 20060206885Abstract: Embodiments of the invention relate to identifying sources of memory leaks. In an embodiment, an agent collects information related to object allocations and de-allocations in accordance with a sampling period, and, based on the relationship between object allocations and de-allocations, the agent analyzes the data and reports the results. Other embodiments are also disclosed.Type: ApplicationFiled: March 10, 2005Publication date: September 14, 2006Inventors: David Seidman, Piotr Findeisen
-
Publication number: 20060173877Abstract: One embodiment disclosed relates to a method of automated alerts for resource retention problems. Data on the resource usage as a function of time is obtained, and an automated analysis of the resource usage data is performed to determine whether the data indicates a minimum level of retention of the resource that increases over time for a period of time longer than a threshold time period. An alert notification is provided if the analysis determines that said indication is inferred from the data. Other embodiments are also disclosed.Type: ApplicationFiled: January 10, 2005Publication date: August 3, 2006Inventors: Piotr Findeisen, David Seidman, Joseph Coha
-
Publication number: 20060167939Abstract: Embodiments of the invention distribute profiling responsibilities for a clustered application to various instances of the application that generally run on different computer hosts. In an embodiment, the profiling responsibility is measured in terms of metrics wherein each profiling agent of an instance collects metrics about that instance. The metrics are prioritized and assigned to instances such that the highest priority metrics are assigned if possible. Each metric is associated with an expected performance overhead, and the assignment of metrics to an instance is done such that the performance overhead on that instance and/or host does not exceed a threshold. Other embodiments are also disclosed.Type: ApplicationFiled: January 21, 2005Publication date: July 27, 2006Inventors: David Seidman, Piotr Findeisen
-
Publication number: 20060010444Abstract: One embodiment disclosed relates to a method of finding lock contention in an application with concurrent threads. Status data is retrieved by periodically sampling status of said threads. The periodically-sampled status data is accumulated, and the lock contention is statistically found from the accumulated status data. The status data may include location information that is usable to pinpoint the lock contention.Type: ApplicationFiled: July 9, 2004Publication date: January 12, 2006Inventors: David Seidman, Piotr Findeisen
-
Publication number: 20050229176Abstract: Elapsed times between execution points of a thread are determined based on start times and stop times associated with the execution points. For each elapsed time, it is determined whether the thread was idle during the elapsed time by comparison of the elapsed time to a first threshold value. Each elapsed time is reduced to a selected value during which the thread was idle. A value indicative of processor usage by the thread is determined as a function of the elapsed times.Type: ApplicationFiled: March 22, 2004Publication date: October 13, 2005Inventor: Piotr Findeisen