Patents by Inventor Daryl L. Puryear
Daryl L. Puryear 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: 9064041Abstract: Methods are classified as simple or complex. Complex methods are modified to add a tracer. Methods classified as simple are not modified to add a tracer. There are many different standards that can be used within the spirit of the present invention to classify methods as simple or complex. In one embodiment, a method is complex if it meets three criteria: (1) the method has an access level of public or package; (2) the method is non-synthetic and (3) the method calls at least one other method. Methods that do not satisfy all three criteria are classified as simple methods. In other embodiments, a method can be classified as complex if it satisfies two of the above criteria, or other similar criteria.Type: GrantFiled: April 8, 2013Date of Patent: June 23, 2015Assignee: CA, Inc.Inventors: Lewis K. Cirne, John B. Bley, Daryl L. Puryear
-
Patent number: 9009680Abstract: Instrumentation points are selected for an application by running the application with comprehensive instrumentation of its components in a development mode. The application can be run by a human operator and/or load simulator which provides requests to the application. The instrumented components are monitored as the application runs. A subset of the components is selected based on criteria such as an order in which the instrumented components are invoked, whether resource utilization, such as consumption of processor cycles, exceeds a threshold, or a frequency with which components are called or call other components, and only that subset is instrumented in a production mode of the application. In one approach, the subset includes components which are invoked when traffic to/from the application matches a pattern provided by an interaction model. As a result, relevant instrumentation points can be identified.Type: GrantFiled: December 18, 2006Date of Patent: April 14, 2015Assignee: CA, Inc.Inventors: Jeffrey R. Cobb, Daryl L. Puryear, Ling Thio
-
Patent number: 8762957Abstract: Data relating to execution flows at a computer system is aggregated across multiple execution flows by categorizing each execution flow into an execution flow shape. The execution flows may represent sequences of software components that are invoked or other computer system resources that are consumed. The execution flow shapes are developed by observing and recording the execution flows at the computer system and applying lossy compression rules. Execution flows are categorized into an execution flow shape which is a closest match. The execution flow data may be aggregated by an agent at the computer system, and communicated to a manager for subsequent use. The aggregation combines the information from all execution flows into a small enough data set that can be reported without consuming unduly large processing overhead while still preserving as many of the interesting aspects of the execution flows as possible.Type: GrantFiled: December 18, 2012Date of Patent: June 24, 2014Assignee: CA, Inc.Inventors: Jeffrey L Cobb, Daryl L Puryear, Gabriel J Vanrenen
-
Patent number: 8418145Abstract: Methods are classified as simple or complex. Complex methods are modified to add a tracer. Methods classified as simple are not modified to add a tracer. There are many different standards that can be used within the spirit of the present invention to classify methods as simple or complex. In one embodiment, a method is complex if it meets three criteria: (1) the method has an access level of public or package; (2) the method is non-synthetic and (3) the method calls at least one other method. Methods that do not satisfy all three criteria are classified as simple methods.Type: GrantFiled: November 3, 2003Date of Patent: April 9, 2013Assignee: CA, Inc.Inventors: Lewis K. Cirne, John B. Bley, Daryl L. Puryear
-
Patent number: 8341605Abstract: Data relating to execution flows at a computer system is aggregated across multiple execution flows by categorizing each execution flow into an execution flow shape. The execution flows may represent sequences of software components that are invoked or other computer system resources that are consumed. The execution flow shapes are developed by observing and recording the execution flows at the computer system and applying lossy compression rules. Execution flows are categorized into an execution flow shape which is a closest match. The execution flow data may be aggregated by an agent at the computer system, and communicated to a manager for subsequent use. The aggregation combines the information from all execution flows into a small enough data set that can be reported without consuming unduly large processing overhead while still preserving as many of the interesting aspects of the execution flows as possible.Type: GrantFiled: December 15, 2005Date of Patent: December 25, 2012Assignee: CA, Inc.Inventors: Jeffrey R. Cobb, Daryl L. Puryear, Gabriel J. Vanrenen
-
Patent number: 8316354Abstract: Data relating to execution flows at a computer system is compressed and aggregated across multiple execution flows by categorizing each execution flow into an execution flow shape. The execution flows may represent sequences of software components that are invoked. The execution flow shapes are developed by observing the execution flows at the computer system and applying lossy compression rules, such as representing multiple iterations of a loop as a single iteration, skipping certain types of software components, such as those having a specified call stack depth, treating some of the software components as being optional, and ignoring recursive calls by the software components. The aggregation and compression allow the information from all execution flows to be combined into a small enough data set that can be reported without consuming unduly large processing overhead while still preserving as many of the interesting aspects of the execution flows as possible.Type: GrantFiled: December 15, 2005Date of Patent: November 20, 2012Assignee: CA, Inc.Inventors: Gabriel J. Vanrenen, Jeffrey R. Cobb, Daryl L. Puryear
-
Patent number: 7949673Abstract: Data relating to execution flows running on different processes or threads at a computer system is correlated. The execution flows may represent sequences of software components that are invoked or other computer system resources that are consumed. A first execution flow fulfills a first request by transmitting a second request which initiates a second execution flow, such as at another computer system. The second request includes meta data which identifies a context of the first request, such as a URL, an agent which monitors the first execution flow, and the component in the first execution flow which initiated the second request. A manager receives information regarding the first execution flow from the first agent, and information regarding the second execution flow, along with the meta data, from a second agent, for correlating the first and second execution flows. The received information may include execution flow shape data.Type: GrantFiled: December 15, 2005Date of Patent: May 24, 2011Assignee: Computer Associates Think, Inc.Inventors: Gabriel J. Vanrenen, Jeffrey R. Cobb, Daryl L. Puryear
-
Patent number: 7870431Abstract: A user specifies a threshold trace period and can initiate transaction tracing on one, some or all of the transactions running on a software system. Transactions with an execution time that exceeds the threshold trace period are reported to the user using a graphical user interface that lists transactions exceeding the specified threshold. For each listed transaction, a visualization can be provided that enables the user to immediately understand where time was being spent in the traced transaction.Type: GrantFiled: December 12, 2002Date of Patent: January 11, 2011Assignee: Computer Associates Think, Inc.Inventors: Lewis K. Cirne, Daryl L. Puryear
-
Patent number: 7496896Abstract: One or more new methods are added to existing object code. The existing object code includes a first method that is capable of producing a result. New code is added to the first method. The new code provides the result to one or more of the new methods. After the modification, the result (e.g. a return value or exception) from the first method can be accessed and used by other threads, processes, systems, entities etc. that were not originally programmed to access the result or exception.Type: GrantFiled: July 17, 2003Date of Patent: February 24, 2009Assignee: Computer Associates Think, Inc.Inventors: John B. Bley, Daryl L. Puryear
-
Publication number: 20080148039Abstract: Instrumentation points are selected for an application by running the application with comprehensive instrumentation of its components in a development mode. The application can be run by a human operator and/or load simulator which provides requests to the application. The instrumented components are monitored as the application runs. A subset of the components is selected based on criteria such as an order in which the instrumented components are invoked, whether resource utilization, such as consumption of processor cycles, exceeds a threshold, or a frequency with which components are called or call other components, and only that subset is instrumented in a production mode of the application. In one approach, the subset includes components which are invoked when traffic to/from the application matches a pattern provided by an interaction model. As a result, relevant instrumentation points can be identified.Type: ApplicationFiled: December 18, 2006Publication date: June 19, 2008Applicant: Computer Associates Think, Inc.Inventors: Jeffrey R. Cobb, Daryl L. Puryear, Ling Thio
-
Patent number: 7234080Abstract: Potential sources of memory leaks are identified by tracking the size of groups of stored items and determining based on the growth pattern of the groups whether the groups of stored items are potential sources of memory leaks. An example of a group of stored items is an instance of a Java collection. If the growth pattern of a particular group of stored items indicates that it may be the source of a memory leak, that group is reported to a user and will continue to be tracked.Type: GrantFiled: December 12, 2002Date of Patent: June 19, 2007Assignee: Computer Associates Think, Inc.Inventors: Lewis K. Cirne, John B. Bley, Daryl L. Puryear, David Latham
-
Publication number: 20040230956Abstract: Methods are classified as simple or complex. Complex methods are modified to add a tracer. Methods classified as simple are not modified to add a tracer. There are many different standards that can be used within the spirit of the present invention to classify methods as simple or complex. In one embodiment, a method is complex if it meets three criteria: (1) the method has an access level of public or package; (2) the method is non-synthetic and (3) the method calls at least one other method. Methods that do not satisfy all three criteria are classified as simple methods.Type: ApplicationFiled: November 3, 2003Publication date: November 18, 2004Inventors: Lewis K. Cirne, John B. Bley, Daryl L. Puryear
-
Publication number: 20040078691Abstract: A user specifies a threshold trace period and can initiate transaction tracing on one, some or all of the transactions running on a software system. Transactions with an execution time that exceeds the threshold trace period are reported to the user using a graphical user interface that lists transactions exceeding the specified threshold. For each listed transaction, a visualization can be provided that enables the user to immediately understand where time was being spent in the traced transaction.Type: ApplicationFiled: December 12, 2002Publication date: April 22, 2004Inventors: Lewis K. Cirne, Daryl L. Puryear
-
Publication number: 20040078540Abstract: Potential sources of memory leaks are identified by tracking the size of groups of stored items and determining based on the growth pattern of the groups whether the groups of stored items are potential sources of memory leaks. An example of a group of stored items is an instance of a Java collection. If the growth pattern of a particular group of stored items indicates that it may be the source of a memory leak, that group is reported to a user and will continue to be tracked.Type: ApplicationFiled: December 12, 2002Publication date: April 22, 2004Inventors: Lewis K. Cirne, John B. Bley, Daryl L. Puryear, David Latham