Patents by Inventor Frank Eliot Levine

Frank Eliot Levine 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: 7937691
    Abstract: A method, apparatus, and computer instructions in a data processing system for monitoring the execution of instructions and accesses to memory locations. If an instruction is associated with a indicator, a counter associated with the instruction is incremented in response to detecting execution of the instruction. The indicator may be associated with a memory location with a counter associated with the memory location being incremented in response to an access of the memory location.
    Type: Grant
    Filed: September 30, 2003
    Date of Patent: May 3, 2011
    Assignee: International Business Machines Corporation
    Inventors: Jimmie Earl DeWitt, Jr., Frank Eliot Levine, Enio Manuel Pineda, Christopher Michael Richardson, Robert John Urquhart
  • Patent number: 7925473
    Abstract: A computer implemented method, apparatus, and computer usable program code to collect information for a system or processor having a transition between an idle state and a non-idle state to form collected system or processor information. The collected system or processor information is provided for analysis by an application. Idle counts occurring during execution of code are collected. The idle counts are provided to an application for analyzing why a processor becomes idle.
    Type: Grant
    Filed: December 4, 2008
    Date of Patent: April 12, 2011
    Assignee: International Business Machines Corporation
    Inventors: Jimmie Earl DeWitt, Jr., Jesse M. Gordon, Frank Eliot Levine, Kean G. Kuiper, Enio Manuel Pineda, Robert John Urquhart
  • Patent number: 7926041
    Abstract: A method, apparatus, and computer instructions for presenting coverage data for code. The coverage data containing instruction access indicators associated with the code is obtained. Particular instruction access indicators that have been set by a processor in the data processing system in response to execution of the code by the processor are identified to form set instruction access indicators. Each set instruction access indicator is associated with a portion of the code. A presentation for the coverage data is generated. The set instruction access indicators are identified in the presentation. This presentation may be, for example, a graphical presentation.
    Type: Grant
    Filed: December 16, 2008
    Date of Patent: April 12, 2011
    Assignee: International Business Machines Corporation
    Inventors: Robert Tod Dimpsey, Frank Eliot Levine, Robert John Urquhart
  • Patent number: 7904912
    Abstract: A computer implemented method, apparatus, and computer usable code for identifying processor utilization. A current event is detected. A number of elapsed cycles for a processor since a previous event are identified in response to detecting the current event. An elapsed time using the number of elapsed cycles and a current frequency of the processor is calculated, wherein the elapsed time is used to identify the processor utilization.
    Type: Grant
    Filed: August 30, 2005
    Date of Patent: March 8, 2011
    Assignee: International Business Machines Corporation
    Inventors: Jimmie Earl DeWitt, Frank Eliot Levine, Enio Manuel Pineda, Robert John Urquhart
  • Patent number: 7900196
    Abstract: A computer implemented method, apparatus and computer usable program code for collecting information on wait states occurring during execution of a program. Filter criteria associated with a wait state are identified. A determination is made as to whether the filter criteria are met for the wait state. Information is collected about a set of requesters associated with the wait state in response to a determination that the filter criteria have been met.
    Type: Grant
    Filed: May 24, 2006
    Date of Patent: March 1, 2011
    Assignee: International Business Machines Corporation
    Inventors: Jimmie Earl DeWitt, Jr., Riaz Y. Hussain, Frank Eliot Levine
  • Patent number: 7895473
    Abstract: A method, apparatus, and computer instructions in a processor for selectively performing operations on data. An operation to be performed on data is identified to form an identified operation. A determination is made as to whether metadata identifying a state of the data is associated with the data. A determination is made as to whether the identified operation can be performed on the data based on the state of the data, in response to the metadata being associated with the data. The operation is performed on the data if the state of the data allows for the operation to be performed. The processor selectively performs the operations based on the state of the data.
    Type: Grant
    Filed: April 29, 2004
    Date of Patent: February 22, 2011
    Assignee: International Business Machines Corporation
    Inventors: William Preston Alexander, III, Frank Eliot Levine, Robert John Urquhart
  • Patent number: 7895382
    Abstract: A method, apparatus, and computer instructions for qualifying events by types of interrupt when interrupt occurs in the processor of a data processing system. A programmable performance monitoring unit (PMU) is used to program hardware counters that collect events associated with a type of interrupt, including nested interrupts. The performance monitoring unit may also count events that occur while servicing interrupt requests based upon the state of interrupt processing. Events that are known to the performance monitoring unit such as instruction retired, TLB misses, may be counted at the same time using a number of performance monitoring counters in the performance monitoring unit.
    Type: Grant
    Filed: January 14, 2004
    Date of Patent: February 22, 2011
    Assignee: International Business Machines Corporation
    Inventors: Jimmie Earl DeWitt, Jr., Frank Eliot Levine, Christopher Michael Richardson, Robert John Urquhart
  • Patent number: 7870170
    Abstract: An improved method, apparatus, and computer instructions for identifying a memory leak in a heap. Prior to the start of the observation period, all live objects in the heap are identified to form a set of live objects by altering an indicator in the live objects. After running the system for the required amount of time or until completion of the event being monitored, the system is used to obtain the list of live objects without the altered indicator. Live objects without the altered indicators form the most likely objects associated with a memory leak.
    Type: Grant
    Filed: May 3, 2005
    Date of Patent: January 11, 2011
    Assignee: International Business Machines Corporation
    Inventors: Phani Gopal V. Achanta, Robert Dimpsey, Frank Eliot Levine, Robert John Urquhart
  • Patent number: 7865776
    Abstract: This invention describes how to avoid data loss due to limited buffer size during continuous tracing of high frequency events such as branches. Buffer data loss is adaptively avoided by either temporarily patching an instruction with a jump to itself or by using delay loops with an adaptive number of iterations during exception handling in which the trace event is written to the buffer.
    Type: Grant
    Filed: October 25, 2007
    Date of Patent: January 4, 2011
    Assignee: International Business Machines Corporation
    Inventors: Scott Thomas Jones, Frank Eliot Levine, Milena Milenkovic, Enio Manuel Pineda
  • Patent number: 7865703
    Abstract: A computer implemented method, apparatus, and computer program product for executing instructions. A determination is made as to whether a processor executing a plurality of instructions is in an instrumentation mode. The processor has a normal set of resources and an alternate set of resources in which the alternate set of resources is associated with the instrumentation mode. When a determination is made that the processor is in the instrumentation mode, the processor executes instrumentation instructions in the plurality of instructions using the alternate set of resources and executes all other instructions in the plurality of instructions using the normal set of resources.
    Type: Grant
    Filed: May 5, 2006
    Date of Patent: January 4, 2011
    Assignee: International Business Machines Corporation
    Inventors: Wen-Tzer Thomas Chen, Jimmie Earl DeWitt, Jr., Frank Eliot Levine, Enio Manuel Pineda
  • Patent number: 7827541
    Abstract: A computer implemented method, apparatus, and computer usable medium for gathering performance related data in a multiprocessing environment. Instrumentation code is executed on a processor that minimizes the distortion to the processor resources used to execute the program to be profiled. Data is written by the instrumentation code to a shared memory in response to an event occurring during execution of the program. The data is generated during execution of the program on the processor and the instrumentation code uses shared memory to convey the data to a profiling application running on a set of profiling processors. The data is collected by the set of profiling processors in the shared memory written by the instrumentation code.
    Type: Grant
    Filed: March 16, 2006
    Date of Patent: November 2, 2010
    Assignee: International Business Machines Corporation
    Inventors: Wen-Tzer Thomas Chen, Jimmie Earl DeWitt, Jr., Frank Eliot Levine, Enio Manuel Pineda
  • Patent number: 7823129
    Abstract: An apparatus and method are provided for the dynamic instrumentation of code to minimize system perturbation during tracing of the execution of the code. With the apparatus and method, “hot spots” in the execution of the code are dynamically determined during tracing of the execution of the code. These “hot spots” are dynamically instrumented, i.e. an event hook is inserted, to cause control to be passed to a handler that determines a caller of the “hot spot” method. The method that called the “hot spot” method, or “caller” method, is identified from a call stack and is dynamically instrumented for an appropriate metric so that the next time the calling method is executed, the dynamically inserted hooks are executed. The execution of the hooks in the caller method is continued for a predetermined period, e.g., number of invocations, to get an understanding of the caller method's characteristics.
    Type: Grant
    Filed: July 18, 2006
    Date of Patent: October 26, 2010
    Assignee: International Business Machines Corporation
    Inventors: Robert Tod Dimpsey, Frank Eliot Levine, Robert John Urquhart
  • Patent number: 7814466
    Abstract: A computer implemented method, apparatus and computer usable program code for marking instructions for instrumentation. A plurality of instructions is presented in a graphical user interface. A user input selecting a set of instructions in the plurality of instructions for instrumentation is received through the graphical user interface. A set of instructions is marked as a set of instrumentation instructions in response to receiving the user input. The set of instructions are executed by a processor if the processor is in an instrumentation mode, and the instrumentation instructions are unexecuted if an absence of the processor being in the instrumentation mode is present.
    Type: Grant
    Filed: May 5, 2006
    Date of Patent: October 12, 2010
    Assignee: International Business Machines Corporation
    Inventors: Wen-Tzer Thomas Chen, Jimmie Earl DeWitt, Jr., Frank Eliot Levine, Enio Manuel Pineda
  • Publication number: 20100223241
    Abstract: The disclosed embodiments present a system, method, and computer program product for certifying a timestamp generated by a data processing system. In some embodiments, the method includes receiving a request to certify a timestamp generated by a trusted data processing system, analyzing historical data related to a system time of the data processing system, and certifying the timestamp in response to determining that the historical data indicates a trustworthy system time of the data processing system when the timestamp was generated.
    Type: Application
    Filed: February 27, 2009
    Publication date: September 2, 2010
    Applicant: International Business Machines Corporation
    Inventors: Riaz Y. Hussain, Phani Gopal V. Achanta, Frank Eliot Levine
  • Publication number: 20100223469
    Abstract: The disclosed embodiments present a method, system and computer program product for certifying software origination. The method for certifying software origination comprises generating at least one certificate of originality for a software artifact, generating a key for authenticating the certificate of originality, incorporating the key into the certificate of originality, and embedding the certificate of originality in the software artifact.
    Type: Application
    Filed: February 27, 2009
    Publication date: September 2, 2010
    Applicant: International Business Machines Corporation
    Inventors: Riaz Y. Hussain, Phani Gopal V. Achanta, Frank Eliot Levine
  • Publication number: 20100223598
    Abstract: A method, apparatus, and computer program product for collecting performance data. In one illustrative embodiment, signaling is performed to start collecting the performance data by an operating system support unit in a multithreaded data processing system. Responsive to a thread switch to an incoming thread after signaling has occurred, the performance data for the incoming thread is collected using a thread specific data collection profile to form collected performance data if the incoming thread is associated with the thread specific data collection profile, wherein the thread specific data collection profile specifies a type of data to collect. Responsive to a subsequent thread switch, the collected performance data is sent to a number of destinations.
    Type: Application
    Filed: February 27, 2009
    Publication date: September 2, 2010
    Applicant: International Business Machines Corporation
    Inventors: Frank Eliot Levine, Milena Milinkovic
  • Patent number: 7783866
    Abstract: A computer implemented method, apparatus and computer program product for processing instructions. A determination is made as to whether an instruction is a start instrumentation instruction in response to identifying the instruction for execution while executing the instructions using a normal set of processor resources in a processor. Subsequent instructions are executed using an alternate set of processor resources until an end instrumentation instruction is encountered.
    Type: Grant
    Filed: May 5, 2006
    Date of Patent: August 24, 2010
    Assignee: International Business Machines Corporation
    Inventors: Wen-Tzer Thomas Chen, Jimmie Earl DeWitt, Jr., Frank Eliot Levine, Enio Manuel Pineda
  • Publication number: 20100211950
    Abstract: The illustrative embodiments disclose a computer implemented method, apparatus, and computer program product for managing a set of applications. In one embodiment, the process registers a system management event in an application configuration database. Responsive to detecting the registered system management event during execution of one application of the set of applications, the process identifies applications of the set of applications associated with the registered system management event that are executing. The process then terminates the applications of the set of applications associated with the registered system management event that are executing. Responsive to terminating the applications of the set of applications associated with the registered system managing event that are executing, the process then executes a handler that processes the registered system management event.
    Type: Application
    Filed: February 19, 2009
    Publication date: August 19, 2010
    Applicant: International Business Machines Corporation
    Inventors: Mary P. Kusko, Frank Eliot Levine, Stella Lee Taylor, Anna W. Topol
  • Patent number: 7725298
    Abstract: An improved method, apparatus, and computer instructions for generating trace data. In response to detecting a new trace event, a determination is made as to whether the new trace event occurred at an expected period of time with respect to a prior trace event. A time stamp in the trace data is placed in response to a determination that the new trace event did not occur at the expected period of time, wherein time stamps occurring at the expected period if time are eliminated from the trace data and wherein compression of the trace data occurs.
    Type: Grant
    Filed: December 13, 2007
    Date of Patent: May 25, 2010
    Assignee: International Business Machines Corporation
    Inventors: Frank Eliot Levine, Milena Milenkovic, Robert J. Urquhart
  • Patent number: 7661035
    Abstract: A method, system, apparatus, and computer program product is presented for tracing operations. A set of related methodologies can be used within instruction tracing software, such as a tracing program, to reduce its tendency to generate interrupts that cause unwanted effects in the system that is being captured. A first methodology allows access to protected memory blocks so that instructions may be read from those memory blocks. A second methodology provides for the trace output buffer to be accessed using physical addressing. A third methodology traces only instruction addresses, which are resolved later during a post-processing phase of operation. A fourth methodology comprises multiple different methods for obtaining copies of instructions that have already executed rather than obtaining them before they are executed.
    Type: Grant
    Filed: November 1, 2007
    Date of Patent: February 9, 2010
    Assignee: International Business Machines Corporation
    Inventors: Jimmie Earl DeWitt, Jr., Riaz Y. Hussain, Frank Eliot Levine, Robert John Urquhart