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: 11449158Abstract: 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: GrantFiled: December 28, 2006Date of Patent: September 20, 2022Assignee: International Business Machines CorporationInventors: Dwayne R. James, William G. O'Farrell, Alexander S. Ross
-
Patent number: 10394685Abstract: 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: GrantFiled: September 13, 2012Date of Patent: August 27, 2019Assignee: International Business Machines CorporationInventors: William G. O'Farrell, Mariano Consens, John (Wen Sheng) Liu
-
Patent number: 10216496Abstract: 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: GrantFiled: September 27, 2016Date of Patent: February 26, 2019Assignee: International Business Machines CorporationInventors: Yaoqing Gao, William G. O'Farrell, Denis Palmeiro
-
Patent number: 10061568Abstract: 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: GrantFiled: December 21, 2017Date of Patent: August 28, 2018Assignee: International Business Machines CorporationInventors: Yaoqing Gao, William G. O'Farrell, Denis Palmeiro
-
Publication number: 20180095736Abstract: 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: ApplicationFiled: December 21, 2017Publication date: April 5, 2018Inventors: Yaoqing Gao, William G. O'Farrell, Denis Palmeiro
-
Publication number: 20180088917Abstract: 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: ApplicationFiled: September 27, 2016Publication date: March 29, 2018Inventors: Yaoqing Gao, William G. O'Farrell, Denis Palmeiro
-
Patent number: 9734461Abstract: 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: GrantFiled: August 18, 2010Date of Patent: August 15, 2017Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Jay W. Benayon, Mariya M. Koshkina, William G. O'Farrell, Vincent F. Szaloky
-
Patent number: 9727319Abstract: 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: GrantFiled: October 13, 2016Date of Patent: August 8, 2017Assignee: International Business Machines CorporationInventors: Shimin Cui, William G. O'Farrell, Graham K. Yiu
-
Publication number: 20170220328Abstract: 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: ApplicationFiled: October 13, 2016Publication date: August 3, 2017Inventors: Shimin Cui, William G. O'Farrell, Graham K. Yiu
-
Patent number: 9535673Abstract: 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: GrantFiled: February 3, 2016Date of Patent: January 3, 2017Assignee: International Business Machines CorporationInventors: Shimin Cui, William G. O'Farrell, Graham K. Yiu
-
Patent number: 9477451Abstract: 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: GrantFiled: November 6, 2015Date of Patent: October 25, 2016Assignee: International Business Machines CorporationInventor: William G. O'Farrell
-
Patent number: 9256516Abstract: 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: GrantFiled: January 28, 2013Date of Patent: February 9, 2016Assignee: International Business Machines CorporationInventors: John D. Bennett, Malik S. Hemani, William G. O'Farrell
-
Patent number: 9104808Abstract: 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: GrantFiled: October 15, 2014Date of Patent: August 11, 2015Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Jane C. Fung, Perry R. Giffen, Paul J. Gooderham, Malik S. Hemani, Karice L. McIntyre, William G. O'Farrell, Shu X. Tan
-
Patent number: 8949790Abstract: 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: GrantFiled: August 30, 2006Date of Patent: February 3, 2015Assignee: International Business Machines CorporationInventors: William G. O'Farrell, Jane C. Fung, Perry R. Giffen, Paul J. Gooderham, Malik S. Hemani, Karice L. McIntyre, Shu X. Tan
-
Publication number: 20150033207Abstract: 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: ApplicationFiled: October 15, 2014Publication date: January 29, 2015Inventors: Jane C. Fung, Perry R. Giffen, Paul J. Gooderham, Malik S. Hemani, Karice L. McIntyre, William G. O'Farrell, Shu X. Tan
-
Patent number: 8483099Abstract: 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: GrantFiled: August 24, 2007Date of Patent: July 9, 2013Assignee: International Business Machines CorporationInventors: Dwayne R. James, William G. O'Farrell, Arthur G. Ryman
-
Patent number: 8473912Abstract: 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: GrantFiled: August 28, 2003Date of Patent: June 25, 2013Assignee: International Business Machines CorporationInventors: William G. O'Farrell, Evangelos Mamas, Shu Xia Tan, Simon D. Moser
-
Patent number: 8375372Abstract: 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: GrantFiled: February 23, 2005Date of Patent: February 12, 2013Assignee: International Business Machines CorporationInventors: Jonathan D. Bennett, Malik S. Hemani, William G. O'Farrell
-
Publication number: 20130014003Abstract: 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: ApplicationFiled: September 13, 2012Publication date: January 10, 2013Applicant: International Business Machines CorporationInventors: William G. O'Farrell, Mariano Consens, John (Wen Sheng) Liu
-
Patent number: 8321845Abstract: 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: GrantFiled: October 13, 2006Date of Patent: November 27, 2012Assignee: International Business Machines CorporationInventors: William G. O'Farrell, Mariano Consens, John Wen Sheng Liu