Patents by Inventor Peter R MacFarlane

Peter R MacFarlane 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: 10740166
    Abstract: Execution of a program in a plurality of threads is monitored. Responsive to identifying an exception triggered by the program execution in a first of the plurality of threads, a data collector can be dynamically created for the exception. The data collector can be configured to collect data exclusively relevant to the program execution in the first thread.
    Type: Grant
    Filed: December 20, 2017
    Date of Patent: August 11, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventor: Peter R. MacFarlane
  • Publication number: 20180137002
    Abstract: Execution of a program in a plurality of threads is monitored. Responsive to identifying an exception triggered by the program execution in a first of the plurality of threads, a data collector can be dynamically created for the exception. The data collector can be configured to collect data exclusively relevant to the program execution in the first thread.
    Type: Application
    Filed: December 20, 2017
    Publication date: May 17, 2018
    Inventor: Peter R. MacFarlane
  • Patent number: 9916192
    Abstract: Dynamically collecting data pertaining to a program execution. A method can include monitoring execution of the program in a plurality of threads and, responsive to identifying an exception triggered by the program execution in a first of the plurality of threads, initiating at least one data collector to collect data exclusively relevant to the program execution in the first thread.
    Type: Grant
    Filed: January 12, 2012
    Date of Patent: March 13, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventor: Peter R. MacFarlane
  • Patent number: 8843938
    Abstract: A method, system, and computer program product for providing asynchronous resumption of a dataflow are provided. The method includes building an executable directed graph from a dataflow that includes multiple interconnected nodes, where at least one of the interconnected nodes is an asynchronous node. The method further includes creating an event flow that includes the asynchronous node and interconnections subsequent to the asynchronous node. The method also includes invoking execution of the executable directed graph, and creating a state object with an identifier associated with the event flow in response to reaching the asynchronous node. The method additionally includes continuing execution of the executable directed graph while avoiding the asynchronous node and the interconnections subsequent to the asynchronous node, and resuming execution of the event flow as identified via the state object upon receiving a response for the asynchronous node.
    Type: Grant
    Filed: July 2, 2008
    Date of Patent: September 23, 2014
    Assignee: International Business Machines Corporation
    Inventors: Peter R. MacFarlane, Adrian W. Spender
  • Publication number: 20130297977
    Abstract: Dynamically collecting data pertaining to a program execution. Execution of the program in a plurality of threads can be monitored. Responsive to identifying an exception triggered by the program execution in a first of the plurality of threads, at least one data collector can be initiated to collect data exclusively relevant to the program execution in the first thread.
    Type: Application
    Filed: April 30, 2013
    Publication date: November 7, 2013
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventor: Peter R. MacFarlane
  • Publication number: 20130185600
    Abstract: Dynamically collecting data pertaining to a program execution. A method can include monitoring execution of the program in a plurality of threads and, responsive to identifying an exception triggered by the program execution in a first of the plurality of threads, initiating at least one data collector to collect data exclusively relevant to the program execution in the first thread.
    Type: Application
    Filed: January 12, 2012
    Publication date: July 18, 2013
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventor: PETER R. MACFARLANE
  • Patent number: 8386577
    Abstract: Provided are a message brokering systems, computer program products and methods for communication in a publish/subscribe environment in which publisher application programs send messages to subscriber application programs via one or more message brokers, the method comprising the following steps: responsive to receipt of a published message at a message broker, referring to characteristics of the received message and subscriber-specified quality of service requirements to determine an appropriate quality or service for onward transmission of the message; selecting a communication protocol in accordance with the determined quality of service; and transmitting the message using the selected communication protocol. Information relating to the quality of service requirements of a first message broker's subscribers is passed to other brokers and subsequently used for selection of an appropriate communication protocol for transmitting messages between the brokers.
    Type: Grant
    Filed: January 12, 2012
    Date of Patent: February 26, 2013
    Assignee: International Business Machines Corporation
    Inventors: Andrew I. Hickson, Simon A J Holdsworth, Timothy N. Holloway, Peter R. MacFarlane, Michael J. Ward
  • Publication number: 20120117172
    Abstract: Provided are a message brokering systems, computer program products and methods for communication in a publish/subscribe environment in which publisher application programs send messages to subscriber application programs via one or more message brokers, the method comprising the following steps: responsive to receipt of a published message at a message broker, referring to characteristics of the received message and subscriber-specified quality of service requirements to determine an appropriate quality or service for onward transmission of the message; selecting a communication protocol in accordance with the determined quality of service; and transmitting the message using the selected communication protocol. Information relating to the quality of service requirements of a first message broker's subscribers is passed to other brokers and subsequently used for selection of an appropriate communication protocol for transmitting messages between the brokers.
    Type: Application
    Filed: January 12, 2012
    Publication date: May 10, 2012
    Applicant: International Business Machines Corporation
    Inventors: Andrew I. Hickson, Simon A. J. Holdsworth, Timothy N. Holloway, Peter R. MacFarlane, Michael J. Ward
  • Patent number: 8122118
    Abstract: Provided are a message brokering systems, computer program products and methods for communication in a publish/subscribe environment in which publisher application programs send messages to subscriber application programs via one or more message brokers, the method comprising the following steps: responsive to receipt of a published message at a message broker, referring to characteristics of the received message and subscriber-specified quality of service requirements to determine an appropriate quality or service for onward transmission of the message; selecting a communication protocol in accordance with the determined quality of service; and transmitting the message using the selected communication protocol. Information relating to the quality of service requirements of a first message broker's subscribers is passed to other brokers and subsequently used for selection of an appropriate communication protocol for transmitting messages between the brokers.
    Type: Grant
    Filed: December 14, 2001
    Date of Patent: February 21, 2012
    Assignee: International Business Machines Corporation
    Inventors: Andrew I Hickson, Simon A J Holdsworth, Timothy N Holloway, Peter R MacFarlane, Michael J Ward
  • Publication number: 20100005466
    Abstract: A method, system, and computer program product for providing asynchronous resumption of a dataflow are provided. The method includes building an executable directed graph from a dataflow that includes multiple interconnected nodes, where at least one of the interconnected nodes is an asynchronous node. The method further includes creating an event flow that includes the asynchronous node and interconnections subsequent to the asynchronous node. The method also includes invoking execution of the executable directed graph, and creating a state object with an identifier associated with the event flow in response to reaching the asynchronous node. The method additionally includes continuing execution of the executable directed graph while avoiding the asynchronous node and the interconnections subsequent to the asynchronous node, and resuming execution of the event flow as identified via the state object upon receiving a response for the asynchronous node.
    Type: Application
    Filed: July 2, 2008
    Publication date: January 7, 2010
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Peter R. MacFarlane, Adrian W. Spender
  • Patent number: 7240097
    Abstract: A method and system for preserving message order when parallel processing messages by: providing a marker (H) in each message (M) for identifying a source of messages for which it is required to preserve the message order; and dispatching (D) each message in accordance with its marker to one of a plurality of parallel processors (P1–P3) so that processing is preserved for messages processed through the plurality of parallel processors. The dispatcher (D) retains a list of all markers of messages that are being processed in parallel, and when a message becomes available to the dispatcher for processing, the dispatcher inspects the list of messages that are currently being processed to determine whether the marker of this message is in the list, and if so delays initiating parallel processing for this message until the marker is no longer in the list.
    Type: Grant
    Filed: February 28, 2002
    Date of Patent: July 3, 2007
    Assignee: International Business Machines Corporation
    Inventors: Simon A J Holdsworth, Peter R MacFarlane
  • Publication number: 20030115317
    Abstract: Provided are a message brokering systems, computer program products and methods for communication in a publish/subscribe environment in which publisher application programs send messages to subscriber application programs via one or more message brokers, the method comprising the following steps: responsive to receipt of a published message at a message broker, referring to characteristics of the received message and subscriber-specified quality of service requirements to determine an appropriate quality or service for onward transmission of the message; selecting a communication protocol in accordance with the determined quality of service; and transmitting the message using the selected communication protocol. Information relating to the quality of service requirements of a first message broker's subscribers is passed to other brokers and subsequently used for selection of an appropriate communication protocol for transmitting messages between the brokers.
    Type: Application
    Filed: December 14, 2001
    Publication date: June 19, 2003
    Applicant: International Business Machines Corporation
    Inventors: Andrew I. Hickson, Simon A.J. Holdsworth, Timothy N. Holloway, Peter R. MacFarlane, Michael J. Ward
  • Publication number: 20030110230
    Abstract: A method and system for preserving message order when parallel processing messages by: providing a marker (H) in each message (M) for identifying a source of messages for which it is required to preserve the message order; and dispatching (D) each message in accordance with its marker to one of a plurality of parallel processors (P1-P3) so that processing is preserved for messages processed through the plurality of parallel processors. The dispatcher (D) retains a list of all markers of messages that are being processed in parallel, and when a message becomes available to the dispatcher for processing, the dispatcher inspects the list of messages that are currently being processed to determine whether the marker of this message is in the list, and if so delays initiating parallel processing for this message until the marker is no longer in the list.
    Type: Application
    Filed: February 28, 2002
    Publication date: June 12, 2003
    Applicant: International Business Machines Corporation
    Inventors: Simon A.J. Holdsworth, Peter R. MacFarlane
  • Patent number: 5019963
    Abstract: A data processing network in which a plurality of workstations such as personal computers (PC) (12) are connected to a host processor (11) and contain PC programs at particular levels for controlling tasks on the personal computers. The personal computers send a signal to the host when they are about to conduct a task indicating which data files they have and at what level. The host has an object library containing a copy of each disk file for each version of PC program. The host determines if the personal computer has the latest level data file for the version of program at that personal computer and, if it does not, sends a copy of the latest level data file to the personal computer to replace the down-level data file. Preferably, the host checks if the personal computer has all the data files it needs for the particular task and, if it does not and if it should because of the version of PC program stored at the PC, the host can load a copy of the missing file to the personal computer.
    Type: Grant
    Filed: March 21, 1988
    Date of Patent: May 28, 1991
    Assignee: International Business Machines Corporation
    Inventors: Graham R. Alderson, Peter R. MacFarlane, Tohru Mori