Patents by Inventor Xavier R. Guerin

Xavier R. Guerin 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: 9471534
    Abstract: A method, system and computer program product for remote direct memory access (RDMA) optimized producer-consumer message processing in a messaging hub is provided. The method includes initializing a shared memory region in memory of a host server hosting operation of a messaging hub. The initialization provides for a control portion and one or more data portions, the control portion storing an index to an available one of the data portions. The method also includes transmitting to a message producer an address of the shared memory region and receiving a message in one of the data portions of the shared memory region from the message producer by way of an RDMA write operation on a network interface of the host server. Finally, the method includes retrieving the message from the one of the data portions and processing the message in the messaging hub in response to the receipt of the message.
    Type: Grant
    Filed: January 4, 2014
    Date of Patent: October 18, 2016
    Assignee: International Business Machines Corporation
    Inventors: Yuqing Gao, Xavier R. Guerin, Xiaoqiao Meng, Tiia Salo
  • Patent number: 9378179
    Abstract: For remote direct memory access (RDMA) by a client to a data record stored in a cache on a server, a hash map is received by a client from a server. The hash map includes one or more entries associated with a key for the data record stored in the cache on the server that stores a server-side remote pointer referencing the data record stored in the cache on the server. The client, using the key, looks up the server-side remote pointer for the data record from the hash map, and then performs one or more RDMA operations using the server-side remote pointer that allow the client to directly access the data record stored in the cache on the server.
    Type: Grant
    Filed: November 21, 2012
    Date of Patent: June 28, 2016
    Assignee: International Business Machines Corporation
    Inventors: Xavier R. Guerin, Tiia J. Salo
  • Publication number: 20160179669
    Abstract: A data processing system includes a plurality of virtual machines each having associated memory pages; a shared memory page cache that is accessible by each of the plurality of virtual machines; and a global hash map that is accessible by each of the plurality of virtual machines. The data processing system is configured such that, for a particular memory page stored in the shared memory page cache that is associated with two or more of the plurality of virtual machines, there is a single key stored in the global hash map that identifies at least a storage location in the shared memory page cache of the particular memory page. The system can be embodied at least partially in a cloud computing system.
    Type: Application
    Filed: March 1, 2016
    Publication date: June 23, 2016
    Inventors: Parijat Dube, Xavier R. Guerin, Seetharami R. Seelam
  • Patent number: 9372826
    Abstract: For remote direct memory access (RDMA) by a client to a data record stored in a cache on a server, a hash map is received by a client from a server. The hash map includes one or more entries associated with a key for the data record stored in the cache on the server that stores a server-side remote pointer referencing the data record stored in the cache on the server. The client, using the key, looks up the server-side remote pointer for the data record from the hash map, and then performs one or more RDMA operations using the server-side remote pointer that allow the client to directly access the data record stored in the cache on the server.
    Type: Grant
    Filed: July 8, 2013
    Date of Patent: June 21, 2016
    Assignee: International Business Machines Corporation
    Inventors: Xavier R. Guerin, Tiia J. Salo
  • Patent number: 9335830
    Abstract: An adjustable keyboard where a macro key is (or can be) made up of multiple, proximate micro keys by adjusting a vertical, at-rest position of the micro keys individually. More specifically, the micro keys forming the macro key are set in a high position, while micro keys surrounding the micro keys forming the macro key will generally be set in the low position. In this way, traditional data entry keyboard keys (that is, macro keys) can be built up in an arbitrary fashion, according to the desires and needs of the user, from a larger matrix of micro keys.
    Type: Grant
    Filed: June 26, 2013
    Date of Patent: May 10, 2016
    Assignee: International Business Machines Corporation
    Inventor: Xavier R. Guerin
  • Patent number: 9323677
    Abstract: A data processing system includes a plurality of virtual machines each having associated memory pages; a shared memory page cache that is accessible by each of the plurality of virtual machines; and a global hash map that is accessible by each of the plurality of virtual machines. The data processing system is configured such that, for a particular memory page stored in the shared memory page cache that is associated with two or more of the plurality of virtual machines, there is a single key stored in the global hash map that identifies at least a storage location in the shared memory page cache of the particular memory page. The system can be embodied at least partially in a cloud computing system.
    Type: Grant
    Filed: August 15, 2013
    Date of Patent: April 26, 2016
    Assignee: International Business Machines Corporation
    Inventors: Parijat Dube, Xavier R. Guerin, Seetharami R. Seelam
  • Publication number: 20150347243
    Abstract: In various embodiments a distributed computing node in a plurality of distributed computing nodes logs transactions in a distributed processing system. In one embodiment, a set of information associated with at least one transaction is recorded in a transaction log. At least a portion of memory in at least one information processing system involved in the transaction is accessed. The portion of memory is directly accessed without involving a processor of the at least one information processing system. The set of information from the transaction log is written to the portion of memory. The set of information is directly written to the portion of memory without involving a processor of the at least one information processing system.
    Type: Application
    Filed: May 27, 2014
    Publication date: December 3, 2015
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Xavier R. GUERIN, Shicong MENG
  • Patent number: 9170950
    Abstract: An exemplary method in accordance with embodiments of this invention includes, at a virtual machine that forms a part of a cluster of virtual machines, computing a key for an instance of a memory page that is to be swapped out to a shared memory cache that is accessible by all virtual machines of the cluster of virtual machines; determining if the computed key is already present in a global hash map that is accessible by all virtual machines of the cluster of virtual machines; and only if it is determined that the computed key is not already present in the global hash map, storing the computed key in the global hash map and the instance of the memory page in the shared memory cache.
    Type: Grant
    Filed: January 16, 2013
    Date of Patent: October 27, 2015
    Assignee: International Business Machines Corporation
    Inventors: Parijat Dube, Xavier R. Guerin, Seetharami R. Seelam
  • Publication number: 20150281016
    Abstract: Various embodiments load balance service requests across one or more servers. In one embodiment, a service requestor directly accesses a shared metrics array stored in at least one server of a plurality of servers in a service cluster. Each of these servers includes one or more services. The shared metrics array is accessible by each of the plurality of servers, and includes a set of metrics for each of the plurality of servers. A determination is made based on the set of metrics associated with at least one server in the plurality of servers if a service request is to be sent to the at least one server. The service request is sent to the at least one server based on determining that the service request is to be sent to the at least one sever.
    Type: Application
    Filed: March 26, 2014
    Publication date: October 1, 2015
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventor: Xavier R. GUERIN
  • Publication number: 20150261563
    Abstract: In various embodiments a distributed computing node in a plurality of distributed computing nodes executes transactions in a distributed processing system. In one embodiment, a transaction commit message is received from a client computing node for a transaction. The transaction commit message includes at least an identifier of the transaction and a transaction sequence for the transaction. The transaction sequence indicates a sequence of execution for the transaction on the plurality of distributed computing nodes. An entry within the transaction sequence associated with the distributed computing node is identified. The entry includes a sequence number for executing the transaction on the distributed computing node with respect to other transactions. The transaction is executed based on the sequence number in the entry.
    Type: Application
    Filed: March 17, 2014
    Publication date: September 17, 2015
    Applicant: International Business Machines Corporation
    Inventors: Xavier R. GUERIN, Shicong MENG
  • Publication number: 20150186331
    Abstract: A method, system and computer program product for remote direct memory access (RDMA) optimized producer-consumer message processing in a messaging hub is provided. The method includes initializing a shared memory region in memory of a host server hosting operation of a messaging hub. The initialization provides for a control portion and one or more data portions, the control portion storing an index to an available one of the data portions. The method also includes transmitting to a message producer an address of the shared memory region and receiving a message in one of the data portions of the shared memory region from the message producer by way of an RDMA write operation on a network interface of the host server. Finally, the method includes retrieving the message from the one of the data portions and processing the message in the messaging hub in response to the receipt of the message.
    Type: Application
    Filed: January 4, 2014
    Publication date: July 2, 2015
    Applicant: International Business Machines Corporation
    Inventors: Yuqing Gao, Xavier R. Guerin, Xiaoqiao Meng, Tiia Salo
  • Publication number: 20150186330
    Abstract: A method, system and computer program product for remote direct memory access (RDMA) optimized producer-consumer message processing in a messaging hub is provided. The method includes initializing a shared memory region in memory of a host server hosting operation of a messaging hub. The initialization provides for a control portion and one or more data portions, the control portion storing an index to an available one of the data portions. The method also includes transmitting to a message producer an address of the shared memory region and receiving a message in one of the data portions of the shared memory region from the message producer by way of an RDMA write operation on a network interface of the host server. Finally, the method includes retrieving the message from the one of the data portions and processing the message in the messaging hub in response to the receipt of the message.
    Type: Application
    Filed: December 30, 2013
    Publication date: July 2, 2015
    Applicant: International Business Machines Corporation
    Inventors: Yuqing Gao, Xavier R. Guerin, Xiaoqiao Meng, Tiia Salo
  • Patent number: 9043498
    Abstract: In one exemplary embodiment, a computer-implemented method includes receiving, at a remote direct memory access (RDMA) device, a plurality of RDMA requests referencing a plurality of virtual pages. Data transfers are scheduled for the plurality of virtual pages, wherein the scheduling occurs at the RDMA device. The number of the virtual pages that are currently pinned is limited for the RDMA requests based on a predetermined pinned page limit.
    Type: Grant
    Filed: September 30, 2013
    Date of Patent: May 26, 2015
    Assignee: International Business Machines Corporation
    Inventors: Xavier R. Guerin, Xiaoqiao Meng, David P. Olshefski, John M. Tracey
  • Patent number: 9037753
    Abstract: In one exemplary embodiment, a computer-implemented method includes receiving, at a remote direct memory access (RDMA) device, a plurality of RDMA requests referencing a plurality of virtual pages. Data transfers are scheduled for the plurality of virtual pages, wherein the scheduling occurs at the RDMA device. The number of the virtual pages that are currently pinned is limited for the RDMA requests based on a predetermined pinned page limit.
    Type: Grant
    Filed: August 29, 2013
    Date of Patent: May 19, 2015
    Assignee: International Business Machines Corporation
    Inventors: Xavier R. Guerin, Xiaoqiao Meng, David P. Olshefski, John M. Tracey
  • Publication number: 20150067085
    Abstract: In one exemplary embodiment, a computer-implemented method includes receiving, at a remote direct memory access (RDMA) device, a plurality of RDMA requests referencing a plurality of virtual pages. Data transfers are scheduled for the plurality of virtual pages, wherein the scheduling occurs at the RDMA device. The number of the virtual pages that are currently pinned is limited for the RDMA requests based on a predetermined pinned page limit.
    Type: Application
    Filed: August 29, 2013
    Publication date: March 5, 2015
    Applicant: International Business Machines Corporation
    Inventors: Xavier R. Guerin, Xiaoqiao Meng, David P. Olshefski, John M. Tracey
  • Publication number: 20150067087
    Abstract: In one exemplary embodiment, a computer-implemented method includes receiving, at a remote direct memory access (RDMA) device, a plurality of RDMA requests referencing a plurality of virtual pages. Data transfers are scheduled for the plurality of virtual pages, wherein the scheduling occurs at the RDMA device. The number of the virtual pages that are currently pinned is limited for the RDMA requests based on a predetermined pinned page limit.
    Type: Application
    Filed: September 30, 2013
    Publication date: March 5, 2015
    Applicant: International Business Machines Corporation
    Inventors: Xavier R. Guerin, Xiaoqiao Meng, David P. Olshefski, John M. Tracey
  • Publication number: 20150002992
    Abstract: An adjustable keyboard where a macro key is (or can be) made up of multiple, proximate micro keys by adjusting a vertical, at-rest position of the micro keys individually. More specifically, the micro keys forming the macro key are set in a high position, while micro keys surrounding the micro keys forming the macro key will generally be set in the low position. In this way, traditional data entry keyboard keys (that is, macro keys) can be built up in an arbitrary fashion, according to the desires and needs of the user, from a larger matrix of micro keys.
    Type: Application
    Filed: June 26, 2013
    Publication date: January 1, 2015
    Inventor: Xavier R. Guerin
  • Publication number: 20140325012
    Abstract: A server and/or a client stores a metadata hash map that includes one or more entries associated with keys for data records stored in a cache on a server. Each of the entries stores metadata for a corresponding data record, wherein the metadata comprises a server-side remote pointer that references the corresponding data record stored in the cache, as well as a version identifier for the key. A selected data record is accessed using a provided key by: (1) identifying potentially matching entries in the metadata hash map using the provided key; (2) accessing data records stored in the cache using the server-side remote pointers from the potentially matching entries; and (3) determining whether the accessed data records match the selected data record using the provided key and the version identifiers from the potentially matching entries.
    Type: Application
    Filed: May 7, 2013
    Publication date: October 30, 2014
    Inventors: Xavier R. Guerin, Tiia J. Salo
  • Patent number: 8869119
    Abstract: Affinity-based preferential call technique, in one aspect, may improve performance of distributed applications in a hybrid system having heterogeneous platforms. A segment of code in a program being executed on a processor may be intercepted or trapped in runtime. A platform is selected in the hybrid system for executing said segment of code, the platform determined to run the segment of code with best efficiency among a plurality of platforms in the hybrid system. The segment of code is dynamically executed on the selected platform determined to run the segment of code with best efficiency.
    Type: Grant
    Filed: September 14, 2012
    Date of Patent: October 21, 2014
    Assignee: International Business Machines Corporation
    Inventors: Michael H. Dawson, Parijat Dube, Liana L. Fong, Yuqing Gao, Xavier R. Guerin, Michel H. T. Hack, Megumi Ito, Graeme Johnson, Nai K. Ling, Yanbin Liu, Xiaoqiao Meng, Pramod B. Nagaraja, Seetharami R. Seelam, Wei Tan, Li Zhang
  • Patent number: 8843894
    Abstract: Affinity-based preferential call technique, in one aspect, may improve performance of distributed applications in a hybrid system having heterogeneous platforms. A segment of code in a program being executed on a processor may be intercepted or trapped in runtime. A platform is selected in the hybrid system for executing said segment of code, the platform determined to run the segment of code with best efficiency among a plurality of platforms in the hybrid system. The segment of code is dynamically executed on the selected platform determined to run the segment of code with best efficiency.
    Type: Grant
    Filed: March 12, 2012
    Date of Patent: September 23, 2014
    Assignee: International Business Machines Corporation
    Inventors: Michael H. Dawson, Parijat Dube, Liana L. Fong, Yuqing Gao, Xavier R. Guerin, Michel H. T. Hack, Megumi Ito, Graeme Johnson, Nai K. Ling, Yanbin Liu, Xiaoqiao Meng, Pramod B. Nagaraja, Seetharami R. Seelam, Wei Tan, Li Zhang