Patents by Inventor William G. O'Farrell

William G. O'Farrell 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: 11449158
    Abstract: Some aspects of the invention provide an interactive, touch-sensitive user interface device. A user interface device for a data processing system is provided, which includes a sensor having a surface configured to contactingly receive a pointing device and further configured to detect physical contact by a living human and to differentiate between said physical contact and movement of the pointing device when the pointing device is engaged with the surface. The user interface device is operable to transmit information corresponding to said physical contact to the data processing system.
    Type: Grant
    Filed: December 28, 2006
    Date of Patent: September 20, 2022
    Assignee: International Business Machines Corporation
    Inventors: Dwayne R. James, William G. O'Farrell, Alexander S. Ross
  • Patent number: 10394685
    Abstract: Embodiments of the present invention address deficiencies of the art in respect to XPATH expression debugging and provide a novel and non-obvious method, system and apparatus for an XPATH expression debugging framework. In an embodiment of the invention, an XPATH expression debugging method can include receiving an XPATH input expression, parsing the XPATH input expression to produce a group of sub-expressions, and ordering the sub-expressions in a model for the XPATH input expression. Thereafter, in response to a selection of one of the sub-expressions in the model, a result set can be produced for the sub-expression.
    Type: Grant
    Filed: September 13, 2012
    Date of Patent: August 27, 2019
    Assignee: International Business Machines Corporation
    Inventors: William G. O'Farrell, Mariano Consens, John (Wen Sheng) Liu
  • Patent number: 10216496
    Abstract: An approach to dynamic run-time alias checking comprising creating a main thread and a helper thread, computing an optimized first region of code in a rollback-only transactional memory associated with the main thread checking for one or more alias dependencies in an un-optimized first region of code, responsive to a determination in a predetermined amount of time that no alias dependencies are present in the un-optimized first region of code, committing a transaction and responsive to at least one of a failure to determine results of the check for one or more alias dependencies in the predetermined amount of time and a determination in the predetermined amount of time that alias dependencies are present in the un-optimized first region of code, performing a rollback of the transaction and executing the un-optimized first region of code.
    Type: Grant
    Filed: September 27, 2016
    Date of Patent: February 26, 2019
    Assignee: International Business Machines Corporation
    Inventors: Yaoqing Gao, William G. O'Farrell, Denis Palmeiro
  • Patent number: 10061568
    Abstract: An approach to dynamic run-time alias checking comprising creating a main thread and a helper thread, computing an optimized first region of code in a rollback-only transactional memory associated with the main thread checking for one or more alias dependencies in an un-optimized first region of code, responsive to a determination in a predetermined amount of time that no alias dependencies are present in the un-optimized first region of code, committing a transaction and responsive to at least one of a failure to determine results of the check for one or more alias dependencies in the predetermined amount of time and a determination in the predetermined amount of time that alias dependencies are present in the un-optimized first region of code, performing a rollback of the transaction and executing the un-optimized first region of code.
    Type: Grant
    Filed: December 21, 2017
    Date of Patent: August 28, 2018
    Assignee: International Business Machines Corporation
    Inventors: Yaoqing Gao, William G. O'Farrell, Denis Palmeiro
  • Publication number: 20180095736
    Abstract: An approach to dynamic run-time alias checking comprising creating a main thread and a helper thread, computing an optimized first region of code in a rollback-only transactional memory associated with the main thread checking for one or more alias dependencies in an un-optimized first region of code, responsive to a determination in a predetermined amount of time that no alias dependencies are present in the un-optimized first region of code, committing a transaction and responsive to at least one of a failure to determine results of the check for one or more alias dependencies in the predetermined amount of time and a determination in the predetermined amount of time that alias dependencies are present in the un-optimized first region of code, performing a rollback of the transaction and executing the un-optimized first region of code.
    Type: Application
    Filed: December 21, 2017
    Publication date: April 5, 2018
    Inventors: Yaoqing Gao, William G. O'Farrell, Denis Palmeiro
  • Publication number: 20180088917
    Abstract: An approach to dynamic run-time alias checking comprising creating a main thread and a helper thread, computing an optimized first region of code in a rollback-only transactional memory associated with the main thread checking for one or more alias dependencies in an un-optimized first region of code, responsive to a determination in a predetermined amount of time that no alias dependencies are present in the un-optimized first region of code, committing a transaction and responsive to at least one of a failure to determine results of the check for one or more alias dependencies in the predetermined amount of time and a determination in the predetermined amount of time that alias dependencies are present in the un-optimized first region of code, performing a rollback of the transaction and executing the un-optimized first region of code.
    Type: Application
    Filed: September 27, 2016
    Publication date: March 29, 2018
    Inventors: Yaoqing Gao, William G. O'Farrell, Denis Palmeiro
  • Patent number: 9734461
    Abstract: Resource usage calculation for process simulation (such as business process simulation). For each resource used by a simulated process, a usage counter object (or similar data structure) is used. In one embodiment, the usage counter object for each resource includes a list of time slots sorted by start times, and another list of time slots sorted by end times, to keep track of currently-scheduled time slots for this particular resource. In another embodiment, the usage counter object for each resource includes a list of time slots, sorted by start times and having associated end times, to keep track of the currently-scheduled time slots for this particular resource. The usage counter objects also store a count of how many units of this resource are currently in use, and a count of how many users are currently using the resource. These counters are updated using the sorted time slot lists.
    Type: Grant
    Filed: August 18, 2010
    Date of Patent: August 15, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jay W. Benayon, Mariya M. Koshkina, William G. O'Farrell, Vincent F. Szaloky
  • Patent number: 9727319
    Abstract: A method for significantly reducing compilation time of an application program is provided for compiling the program using profile-directed feedback (PDF). The method applies an additional analysis process between a training run of the application program and a whole program compilation of the application. This analysis process examines a PDF profile file(s) produced during the training run and aggregates data from the PDF file to determine a maximum block counter associated with each source file of the application. Only those source files having maximum block counters in a specified top percent of all the source files of the application have their fat binaries included in the whole program compilation.
    Type: Grant
    Filed: October 13, 2016
    Date of Patent: August 8, 2017
    Assignee: International Business Machines Corporation
    Inventors: Shimin Cui, William G. O'Farrell, Graham K. Yiu
  • Publication number: 20170220328
    Abstract: A method for significantly reducing compilation time of an application program is provided for compiling the program using profile-directed feedback (PDF). The method applies an additional analysis process between a training run of the application program and a whole program compilation of the application. This analysis process examines a PDF profile file(s) produced during the training run and aggregates data from the PDF file to determine a maximum block counter associated with each source file of the application. Only those source files having maximum block counters in a specified top percent of all the source files of the application have their fat binaries included in the whole program compilation.
    Type: Application
    Filed: October 13, 2016
    Publication date: August 3, 2017
    Inventors: Shimin Cui, William G. O'Farrell, Graham K. Yiu
  • Patent number: 9535673
    Abstract: A method for significantly reducing compilation time of an application program is provided for compiling the program using profile-directed feedback (PDF). The method applies an additional analysis process between a training run of the application program and a whole program compilation of the application. This analysis process examines a PDF profile file(s) produced during the training run and aggregates data from the PDF file to determine a maximum block counter associated with each source file of the application. Only those source files having maximum block counters in a specified top percent of all the source files of the application have their fat binaries included in the whole program compilation.
    Type: Grant
    Filed: February 3, 2016
    Date of Patent: January 3, 2017
    Assignee: International Business Machines Corporation
    Inventors: Shimin Cui, William G. O'Farrell, Graham K. Yiu
  • Patent number: 9477451
    Abstract: Techniques are described for improving compilation and optimization of application code based on generated metadata based on one or more dynamic measurements of the application code. In one example, a method comprises generating metadata based on one or more dynamic measurements of a code portion. The method further comprises associating the metadata with one or more selected segments of the code portion. The method further comprises deploying the one or more selected segments of the code portion with the associated metadata to a target unit for compilation and optimization.
    Type: Grant
    Filed: November 6, 2015
    Date of Patent: October 25, 2016
    Assignee: International Business Machines Corporation
    Inventor: William G. O'Farrell
  • Patent number: 9256516
    Abstract: A BPEL program simulator can include a document object modeler configured to arrange activities defined by a BPEL document into a document object model (DOM) tree. The DOM tree can include activity nodes and links between the activity nodes. The BPEL program simulator further can include simulation logic configured to process the activity nodes to emulate at least one BPEL activity selected from the group consisting of Sequence, Flow, While, Pick and OnMessage, Switch and Case, Invoke, Script, Receive, Reply, Empty, Staff, and Assign.
    Type: Grant
    Filed: January 28, 2013
    Date of Patent: February 9, 2016
    Assignee: International Business Machines Corporation
    Inventors: John D. Bennett, Malik S. Hemani, William G. O'Farrell
  • Patent number: 9104808
    Abstract: SMAPs are generated for use in debugging visual paradigms. A system can debug a non-Java source, or a visual paradigm, embedded inside another distinct paradigm. The system may include a visual object ordering system that determines an order number for each of a plurality of visual objects in the visual paradigm, and a mapping system that maps the order number of each visual object to a set of line numbers in the associated code output.
    Type: Grant
    Filed: October 15, 2014
    Date of Patent: August 11, 2015
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jane C. Fung, Perry R. Giffen, Paul J. Gooderham, Malik S. Hemani, Karice L. McIntyre, William G. O'Farrell, Shu X. Tan
  • Patent number: 8949790
    Abstract: SMAPs are generated for use in debugging visual paradigms. A system can debug a non-Java source, or a visual paradigm, embedded inside another distinct paradigm. The system may include a visual object ordering system that determines an order number for each of a plurality of visual objects in the visual paradigm, and a mapping system that maps the order number of each visual object to a set of line numbers in the associated code output.
    Type: Grant
    Filed: August 30, 2006
    Date of Patent: February 3, 2015
    Assignee: International Business Machines Corporation
    Inventors: William G. O'Farrell, Jane C. Fung, Perry R. Giffen, Paul J. Gooderham, Malik S. Hemani, Karice L. McIntyre, Shu X. Tan
  • Publication number: 20150033207
    Abstract: SMAPs are generated for use in debugging visual paradigms. A system can debug a non-Java source, or a visual paradigm, embedded inside another distinct paradigm. The system may include a visual object ordering system that determines an order number for each of a plurality of visual objects in the visual paradigm, and a mapping system that maps the order number of each visual object to a set of line numbers in the associated code output.
    Type: Application
    Filed: October 15, 2014
    Publication date: January 29, 2015
    Inventors: Jane C. Fung, Perry R. Giffen, Paul J. Gooderham, Malik S. Hemani, Karice L. McIntyre, William G. O'Farrell, Shu X. Tan
  • Patent number: 8483099
    Abstract: A portable teleconference phone system includes a plurality of portable computers each having a microphone disposed therein, the microphone configured to receive a plurality of analog audio signals from a plurality of users at a first location, the analog audio signals being converted into one of a plurality of digital audio signals at the portable computers; and a portable teleconference unit located at the first location configured to receive the digital audio signals from the portable computers over a wireless link using a Bluetooth communication protocol, the portable teleconference unit configured to multiplex the digital audio signals into a single digital audio signal, convert the single digital audio signal into a single analog audio signal representative of the analog audio signals, and send the single analog audio signal over a communication wire to a remote communication device operated by a plurality of users at a second location forming a teleconference.
    Type: Grant
    Filed: August 24, 2007
    Date of Patent: July 9, 2013
    Assignee: International Business Machines Corporation
    Inventors: Dwayne R. James, William G. O'Farrell, Arthur G. Ryman
  • Patent number: 8473912
    Abstract: A debugger allows debugging of applications using a flow paradigm. Breakpoints may be set based on the flow model. Similarly, variables used by the flow model may be queried. Debugging information may be presented in a graphical user interface, in conjunction with a depiction of the application using a flow diagram.
    Type: Grant
    Filed: August 28, 2003
    Date of Patent: June 25, 2013
    Assignee: International Business Machines Corporation
    Inventors: William G. O'Farrell, Evangelos Mamas, Shu Xia Tan, Simon D. Moser
  • Patent number: 8375372
    Abstract: A BPEL program simulator can include a document object modeler configured to arrange activities defined by a BPEL document into a document object model (DOM) tree. The DOM tree can include activity nodes and links between the activity nodes. The BPEL program simulator further can include simulation logic configured to process the activity nodes to emulate at least one BPEL activity selected from the group consisting of Sequence, Flow, While, Pick and OnMessage, Switch and Case, Invoke, Script, Receive, Reply, Empty, Staff, and Assign.
    Type: Grant
    Filed: February 23, 2005
    Date of Patent: February 12, 2013
    Assignee: International Business Machines Corporation
    Inventors: Jonathan D. Bennett, Malik S. Hemani, William G. O'Farrell
  • Publication number: 20130014003
    Abstract: Embodiments of the present invention address deficiencies of the art in respect to XPATH expression debugging and provide a novel and non-obvious method, system and apparatus for an XPATH expression debugging framework. In an embodiment of the invention, an XPATH expression debugging method can include receiving an XPATH input expression, parsing the XPATH input expression to produce a group of sub-expressions, and ordering the sub-expressions in a model for the XPATH input expression. Thereafter, in response to a selection of one of the sub-expressions in the model, a result set can be produced for the sub-expression.
    Type: Application
    Filed: September 13, 2012
    Publication date: January 10, 2013
    Applicant: International Business Machines Corporation
    Inventors: William G. O'Farrell, Mariano Consens, John (Wen Sheng) Liu
  • Patent number: 8321845
    Abstract: Embodiments of the present invention address deficiencies of the art in respect to XPATH expression debugging and provide a novel and non-obvious method, system and apparatus for an XPATH expression debugging framework. In an embodiment of the invention, an XPATH expression debugging method can include receiving an XPATH input expression, parsing the XPATH input expression to produce a group of sub-expressions, and ordering the sub-expressions in a model for the XPATH input expression. Thereafter, in response to a selection of one of the sub-expressions in the model, a result set can be produced for the sub-expression.
    Type: Grant
    Filed: October 13, 2006
    Date of Patent: November 27, 2012
    Assignee: International Business Machines Corporation
    Inventors: William G. O'Farrell, Mariano Consens, John Wen Sheng Liu