Patents by Inventor John Urquhart

John Urquhart 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: 7093081
    Abstract: A method, apparatus, and computer instructions in a data processing system for processing instructions are provided. Instructions are received at a processor in the data processing system. If a selected indicator is associated with the instruction, counting of each event associated with the execution of the instruction is enabled. In some embodiments, the performance indicators may be utilized to obtain information regarding the nature of the cache hits and reloads of cache lines within the instruction or data cache. These embodiments may be used to determine whether processors of a multiprocessor system, such as a symmetric multiprocessor (SMP) system, are truly sharing a cache line or if there is false sharing of a cache line. This determination may then be used as a means for determining how to better store the instructions/data of the cache line to prevent false sharing of the cache line.
    Type: Grant
    Filed: January 14, 2004
    Date of Patent: August 15, 2006
    Assignee: International Business Machines Corporation
    Inventors: Jimmie Earl DeWitt, Jr., Frank Eliot Levine, Christopher Michael Richardson, Robert John Urquhart
  • Patent number: 7082486
    Abstract: A method, apparatus, and computer instructions for counting interrupts by type. An interrupt count is incremented when a particular type of interrupt occurs. The count may be stored in the IDT or an interrupt count table outside the IDT. The interrupt unit increments the count each time a particular type of interrupt occurs. In the event of a potential count overflow, the mechanism of the present invention provides logic necessary to notify software in order to handle the overflow.
    Type: Grant
    Filed: January 14, 2004
    Date of Patent: July 25, 2006
    Assignee: International Business Machines Corporation
    Inventors: Jimmie Earl DeWitt, Jr., Frank Eliot Levine, Christopher Michael Richardson, Robert John Urquhart
  • Patent number: 7062684
    Abstract: A method and system for enabling tracing of a repeat instruction are provided. A repeat instruction is executed within a processor. In response to detecting a repeat instruction flag set during a last execution of the repeat instruction, an interrupt is initiated within the processor. The processor enables reading a count of executions for the repeat instruction from a storage unit within the processor by a trace program or external hardware during the interrupt.
    Type: Grant
    Filed: December 19, 2002
    Date of Patent: June 13, 2006
    Assignee: International Business Machines Corporation
    Inventors: Jimmie Earl DeWitt, Jr., Frank Eliot Levine, Robert John Urquhart
  • Publication number: 20050289315
    Abstract: A method and system for determining the memory utilization of a heap are provided. With the method and system, object allocations and optionally, possible memory freeing events are used to initiate a mark-and-count operation. The mark-and-count operation marks the live objects and maintains a running count of their memory bytes allocated to the live objects, referred to as a live count. The execution of the mark-and-count operation may be dependent upon various criteria including thresholds, functions of the live count, peak live counts, number of memory bytes allocated since a previous mark-and-count operation was performed, and the like. In addition to the live count, a peak live count may be obtained and updated as new peak live counts are identified. When the peak live count is updated, additional information may be obtained via a heap dump, arcflow tree, or the like.
    Type: Application
    Filed: June 24, 2004
    Publication date: December 29, 2005
    Applicant: International Business Machines Corporation
    Inventors: Phani Gopal Achanta, Robert Tod Dimpsey, Frank Eliot Levine, Robert John Urquhart
  • Patent number: 6931354
    Abstract: Performance events are counted for a computing system. This includes designating a first processor counter as a low-order counter for counting a certain performance event encountered by the processor and associating with the first counter a second counter as a high-order counter. The first counter is incremented responsive to detecting the performance event for a first processing thread. Responsive to a second thread, an accumulator in system memory for the first thread and first and second counters is updated. Responsive to the first thread becoming active, values of the first and second counters are loaded from the accumulator. Responsive to a user call to read and return a combined value, a first instance of the second counter is read, then the first counter is read and a second instance of the second counter is read before returning the combined value.
    Type: Grant
    Filed: November 13, 2003
    Date of Patent: August 16, 2005
    Assignee: International Business Machines Corporation
    Inventors: Scott Thomas Jones, Frank Eliot Levine, Robert John Urquhart
  • Patent number: 6925424
    Abstract: A value in a counter on a processor is incremented for occurrences of a monitored event, providing a measured value for the event. The value of the counter register for a first thread is saved responsive to a switch from the first thread to a second thread. The value is saved in an accumulator in system memory. Then, responsive to a switch back to the first thread, the value for the first thread is restored from the accumulator. In this way, a counter may be read, and its value, for the first thread, for example, remains consistent despite any intervening thread switches. Since the counter register may be read directly, in the user state, this provides a faster and more consistent way to update performance counts.
    Type: Grant
    Filed: October 16, 2003
    Date of Patent: August 2, 2005
    Assignee: International Business Machines Corporation
    Inventors: Scott Thomas Jones, Frank Eliot Levine, Luc Rene Smolders, Robert John Urquhart
  • Publication number: 20040268172
    Abstract: A method is presented for enabling application-level software to normalize processor clock values within a multiprocessor data processing system. A first processor number associated with a first processor is obtained such that the first processor executes one or more instructions for obtaining the first processor number. Subsequent to obtaining the first processor number, a processor clock value is obtained such that the processor clock value is associated with a processor that executes one or more instructions for obtaining the processor clock value. Subsequent to obtaining the processor clock value, a second processor number associated with a second processor is obtained such that the second processor executes one or more instructions for obtaining the second processor number. If the first processor number and the second processor number are equal, then the first processor number is used to retrieve a compensation value for a normalization operation on the processor clock value.
    Type: Application
    Filed: June 26, 2003
    Publication date: December 30, 2004
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Clive Richard Kates, Frank Eliot Levine, Robert John Urquhart
  • Patent number: 6822554
    Abstract: The present invention relates to a method and system of medication monitoring which includes analyzing data on the clinical consequences of variable patient compliance with prescribed drug regimens, communicating to caregivers and/or patients the compliance-dependent probabilities of two clinically important transitions in health status: substantive improvement in the patient's health status and substantive deterioration in the patient's health status, defining acceptable levels of the respective probabilities of deterioration and of improvement, and intervening when appropriate to improve the patient's compliance, in order to achieve mutually-agreed upon maintenance, improvement, or avoidance of deterioration in health status.
    Type: Grant
    Filed: January 13, 2003
    Date of Patent: November 23, 2004
    Assignee: Hexalog SA
    Inventors: Bernard Vrijens, John Urquhart, Erik De Klerk, Jean-Michel Metry
  • Publication number: 20040193446
    Abstract: The present invention relates to a system and method for managing a patient treatment program including a prescribed dosing regimen. The system and method develops and/or makes use of a pharmacokinetic model and a pharmacodynamic model and the monitored adherence of the patient to determine if and when testing should be performed. The system and method further determines if the prescribed dosing regimen should be adjusted, based upon a comparison of the results of the one or more tests and the results predicted by the one or more models.
    Type: Application
    Filed: March 27, 2003
    Publication date: September 30, 2004
    Inventors: Steven Lloyd Mayer, John Urquhart, Jean-Michel Metry, Bernard Vrijens
  • Publication number: 20040163077
    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: Application
    Filed: February 13, 2003
    Publication date: August 19, 2004
    Applicant: International Business Machines Corporation
    Inventors: Robert Tod Dimpsey, Frank Eliot Levine, Robert John Urquhart
  • Publication number: 20040123084
    Abstract: A method and system for enabling tracing of a repeat instruction are provided. A repeat instruction is executed within a processor. In response to detecting a repeat instruction flag set during a last execution of the repeat instruction, an interrupt is initiated within the processor. The processor enables reading a count of executions for the repeat instruction from a storage unit within the processor by a trace program or external hardware during the interrupt.
    Type: Application
    Filed: December 19, 2002
    Publication date: June 24, 2004
    Applicant: International Business Machines Corporation
    Inventors: Jimmie Earl DeWitt, Frank Eliot Levine, Robert John Urquhart
  • Publication number: 20040073454
    Abstract: The system of portal-mediated, website-based analysis of medication dosing data provides a system for recording dosing history, analyzing the dosing history data, and providing a physician with the analysis of the dosing history data, as well as advice as to the steps to take to improve the patient's compliance or to prevent its further deterioration. The system for portal-mediated, website-based analysis of medication dosing includes a package, dispenser, or organizer adapted to provide a patient with medication, and to generate dosing history data, a webserver accessible through a website and adapted to receive said dosing history data through said website via the Internet, and a processor for analyzing the received dosing history data to thereby generate analysis data.
    Type: Application
    Filed: October 10, 2002
    Publication date: April 15, 2004
    Inventors: John Urquhart, Pierre-Alain Gaillard, Jean-Michel Metry
  • Patent number: 6662359
    Abstract: The present invention is directed to a system, method and instructions for handling path flow exception and finalization processing in an object oriented programming language. Initially, each instrumentation method is checked for a code to indicated an exception being thrown. A hook is inserted before the exception code and identifies the method throwing the exception. Methods must also be checked for exception tables. When an exception table is found, then a hook is inserted at the entry point of each exception handler for every entry in the exception table. This hook identifies the method which catches the exception.
    Type: Grant
    Filed: July 20, 2000
    Date of Patent: December 9, 2003
    Assignee: International Business Machines Corporation
    Inventors: Robert Francis Berry, John Day Howard, Riaz Y. Hussain, Frank Eliot Levine, Robert John Urquhart
  • Patent number: 6658654
    Abstract: A low-overhead performance measurement of an application executing in a data processing system is provided in order to generate per-thread performance information in a multithreaded environment. While a first set of events is being monitored for a particular thread as a first metric, events that may indirectly cause inaccuracies in the first metric, such as thread switches, are also monitored as a second metric. The presence of a positive value for the second metric is then used to determine that the first metric is inaccurate or unreliable, after which the first metric may be discarded; otherwise, the first metric is considered accurate. For example, the first metric may then be considered a thread-relative metric as it has been observed during a time period in which no thread switch events or interrupt events would have caused the first metric to become inaccurate during the execution of a particular thread.
    Type: Grant
    Filed: July 6, 2000
    Date of Patent: December 2, 2003
    Assignee: International Business Machines Corporation
    Inventors: Robert Francis Berry, Robert Tod Dimpsey, Frank Eliot Levine, Enio Manuel Pineda, Robert John Urquhart
  • Publication number: 20030152622
    Abstract: An erodible, gastric-retentive oral diuretic is provided that is formulated using the in vitro drug release profile obtained with USP Disintegration test equipment rather the USP Dissolution Apparatus. The invention is premised on the discovery that the USP Disintegration Test and modified versions thereof are far more predictive of the in vivo release profile for a controlled release dosage form than is the standard USP Dissolution Test, particularly controlled release dosage forms of the swellable, erodible type. The dosage forms generally comprise particles of a biocompatible, hydrophilic polymer having the active agent incorporated therein, wherein the particles are optionally but preferably compacted into a tablet or loaded into a capsule. The dosage forms can be used to deliver water-insoluble or sparingly soluble drugs as well as water-soluble drugs, providing that the latter are coated with a protective coating or contained in a protective vesicle.
    Type: Application
    Filed: November 12, 2002
    Publication date: August 14, 2003
    Inventors: Jenny Louie-Helm, Bret Berner, John Urquhart
  • Publication number: 20030135392
    Abstract: The present invention relates to a method and system of medication monitoring which includes analyzing data on the clinical consequences of variable patient compliance with prescribed drug regimens, communicating to caregivers and/or patients the compliance-dependent probabilities of two clinically important transitions in health status: substantive improvement in the patient's health status and substantive deterioration in the patient's health status, defining acceptable levels of the respective probabilities of deterioration and of improvement, and intervening when appropriate to improve the patient's compliance, in order to achieve mutually-agreed upon maintenance, improvement, or avoidance of deterioration in health status.
    Type: Application
    Filed: January 13, 2003
    Publication date: July 17, 2003
    Inventors: Bernard Vrijens, John Urquhart, Erik De Klerk, Jean-Michel Metry
  • Publication number: 20030135789
    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: Application
    Filed: January 14, 2002
    Publication date: July 17, 2003
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jimmie Earl DeWitt, Riaz Y. Hussain, Frank Eliot Levine, Robert John Urquhart
  • Patent number: 6553564
    Abstract: A process and system for profiling code executing on a data processing system is provided. Event-based trace data is recorded in response to selected events, and the event-based trace data includes an indication of which code is being interrupted. The trace data may be processed to identify a thread or method that was executing during the event. A periodically occurring event is also detected, and a stack associated with the profiled code is identified in response to detection of the periodically occurring event, such as a timer interrupt. The stack is examined to identify each routine that is currently executing during the periodically occurring event.
    Type: Grant
    Filed: June 30, 1999
    Date of Patent: April 22, 2003
    Assignee: International Business Machines Corporation
    Inventors: William Preston Alexander, III, Robert Francis Berry, Frank Eliot Levine, Chester Charles John, Jr., Robert John Urquhart
  • Patent number: 6513155
    Abstract: A process and system for profiling code executing on a data processing system is provided. Event-based trace data is recorded in response to selected events, and the event-based trace data includes an indication which code is being interrupted. The trace data may be processed to identify a thread or method that was executing during the event. A periodically occurring event is also detected, and a call stack associated with the profiled code is identified in response to detection of the periodically occurring event, such as a timer interrupt. The call stack is examined to identify each routine that is currently executing during the periodically occurring event, and the trace data is recorded with the call stack information. The trace data from the recorded events and the trace data from the call stacks are processed to generate a tree structure in which the nodes indicate the call structure of the routine information from both the trace events and the call stacks.
    Type: Grant
    Filed: June 30, 1999
    Date of Patent: January 28, 2003
    Assignee: International Business Machines Corporation
    Inventors: William Preston Alexander, III, Robert Francis Berry, Frank Eliot Levine, Robert John Urquhart
  • Patent number: 6509476
    Abstract: This invention relates to a method of making N-benzyl indoles, and to intermediates for use in the method, and to certain substantially optically pure N-benzyl indoles obtained by the method.
    Type: Grant
    Filed: August 11, 2000
    Date of Patent: January 21, 2003
    Assignees: The University of East Anglia, Eli Lilly and Company
    Inventors: Nicholas James Bach, Stephen Richard Baker, Jeremy Gilmore, Russell Andrew Lewthwaite, Alexander McKillop, Jason Scott Sawyer, George Richard Stephenson, Michael William John Urquhart