Patents by Inventor Hong Lam Hua

Hong Lam Hua 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: 8806153
    Abstract: A cache within a computer system receives a partial write request and identifies a cache hit of a cache line. The cache line corresponds to the partial write request and includes existing data. In turn, the cache receives partial write data and merges the partial write data with the existing data into the cache line. In one embodiment, the existing data is “modified” or “dirty.” In another embodiment, the existing data is “shared.” In this embodiment, the cache changes the state of the cache line to indicate the storing of the partial write data into the cache line.
    Type: Grant
    Filed: February 22, 2011
    Date of Patent: August 12, 2014
    Assignee: International Business Machines Corporation
    Inventors: Robert H. Bell, Jr., Herman Dietrich Dierks, Hong Lam Hua, Mysore Sathyanarayana Srinivas
  • Patent number: 8688961
    Abstract: A method, system and computer-usable medium are disclosed for managing prefetch streams in a virtual machine environment. Compiled application code in a first core, which comprises a Special Purpose Register (SPR) and a plurality of first prefetch engines, initiates a prefetch stream request. If the prefetch stream request cannot be initiated due to unavailability of a first prefetch engine, then an indicator bit indicating a Prefetch Stream Dispatch Fault is set in the SPR, causing a Hypervisor to interrupt the execution of the prefetch stream request. The Hypervisor then calls its associated operating system (OS), which determines prefetch engine availability for a second core comprising a plurality of second prefetch engines. If a second prefetch engine is available, then the OS migrates the prefetch stream request from the first core to the second core, where it is initiated on an available second prefetch engine.
    Type: Grant
    Filed: March 22, 2012
    Date of Patent: April 1, 2014
    Assignee: International Business Machines Corporation
    Inventors: Matthew Accapadi, Robert H. Bell, Jr., Hong Lam Hua, Ram Raghavan, Mysore Sathyanarayana Srinivas
  • Patent number: 8688960
    Abstract: A method, system and computer-usable medium are disclosed for managing prefetch streams in a virtual machine environment. Compiled application code in a first core, which comprises a Special Purpose Register (SPR) and a plurality of first prefetch engines, initiates a prefetch stream request. If the prefetch stream request cannot be initiated due to unavailability of a first prefetch engine, then an indicator bit indicating a Prefetch Stream Dispatch Fault is set in the SPR, causing a Hypervisor to interrupt the execution of the prefetch stream request. The Hypervisor then calls its associated operating system (OS), which determines prefetch engine availability for a second core comprising a plurality of second prefetch engines. If a second prefetch engine is available, then the OS migrates the prefetch stream request from the first core to the second core, where it is initiated on an available second prefetch engine.
    Type: Grant
    Filed: October 15, 2010
    Date of Patent: April 1, 2014
    Assignee: International Business Machines Corporation
    Inventors: Matthew Accapadi, Robert H. Bell, Jr., Hong Lam Hua, Ram Raghavan, Mysore Sathyanarayana Srinivas
  • Patent number: 8458730
    Abstract: A method, medium and implementing processing system are provided in which the Operating System (OS) driver is divided into two parts, viz. an upper level OS driver and a lower level OS driver. The lower level OS driver sets up the adapter hardware and any adapter hardware work-around. The upper level OS driver is interfaced to the OS communication stack and each can be compiled separately. The upper OS driver is compiled and shipped with the OS to make sure it is compatible with the OS communication stack. The lower OS driver, in an exemplary embodiment, is compiled and stored in an adapter flash memory. The OS dynamically combines the upper and lower OS drivers together during the load time.
    Type: Grant
    Filed: February 5, 2008
    Date of Patent: June 4, 2013
    Assignee: International Business Machines Corporation
    Inventors: James R. Gallagher, Binh Hua, Hong Lam Hua, Wen Xiong
  • Patent number: 8413158
    Abstract: An operating system of an information handling system (IHS) determines a process tree of data sharing threads in an application that the IHS executes. A load balancing manager assigns a home processor to each thread of the executing application process tree and dispatches the process tree to the home processor. The load balancing manager determines whether a particular poaching processor of a virtual or real processor group is available to execute threads of the executing application within the home processor of a processor group. If ready or run queues of a prospective poaching processor are empty, the load balancing manager may move or poach a thread or threads from the home processor ready queue to the ready queue of the prospective poaching processor. The poaching processor executes the poached threads to provide load balancing to the information handling system (IHS).
    Type: Grant
    Filed: September 13, 2010
    Date of Patent: April 2, 2013
    Assignee: International Business Machines Corporation
    Inventors: Men-Chow Chiang, Hong Lam Hua
  • Patent number: 8402470
    Abstract: A processor thread load balancing manager employs an operating system of an information handling system (IHS) that determines a process tree of data sharing threads in an application that the IHS executes. The load balancing manager assigns a home processor to each thread of the executing application process tree and dispatches the process tree to the home processor. The load balancing manager determines whether a particular poaching processor of a virtual or real processor group is available to execute threads of the executing application within the home processor of a processor group. If ready or run queues of a prospective poaching processor are empty, the load balancing manager may move or poach a thread or threads from the home processor ready queue to the ready queue of the prospective poaching processor. The poaching processor executes the poached threads to provide load balancing to the information handling system (IHS).
    Type: Grant
    Filed: April 21, 2012
    Date of Patent: March 19, 2013
    Assignee: International Business Machines Corporation
    Inventors: Men-Chow Chiang, Hong Lam Hua
  • Publication number: 20120215982
    Abstract: A cache within a computer system receives a partial write request and identifies a cache hit of a cache line. The cache line corresponds to the partial write request and includes existing data. In turn, the cache receives partial write data and merges the partial write data with the existing data into the cache line. In one embodiment, the existing data is “modified” or “dirty.” In another embodiment, the existing data is “shared.” In this embodiment, the cache changes the state of the cache line to indicate the storing of the partial write data into the cache line.
    Type: Application
    Filed: February 22, 2011
    Publication date: August 23, 2012
    Applicant: International Business Machines Corporation
    Inventors: Robert H. Bell, JR., Herman Dietrich Dierks, Hong Lam Hua, Mysore Sathyanarayana Srinivas
  • Publication number: 20120204188
    Abstract: A processor thread load balancing manager employs an operating system of an information handling system (IHS) that determines a process tree of data sharing threads in an application that the IHS executes. The load balancing manager assigns a home processor to each thread of the executing application process tree and dispatches the process tree to the home processor. The load balancing manager determines whether a particular poaching processor of a virtual or real processor group is available to execute threads of the executing application within the home processor of a processor group. If ready or run queues of a prospective poaching processor are empty, the load balancing manager may move or poach a thread or threads from the home processor ready queue to the ready queue of the prospective poaching processor. The poaching processor executes the poached threads to provide load balancing to the information handling system (IHS).
    Type: Application
    Filed: April 21, 2012
    Publication date: August 9, 2012
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Men-Chow Chiang, Hong Lam Hua
  • Publication number: 20120066688
    Abstract: An operating system of an information handling system (IHS) determines a process tree of data sharing threads in an application that the IHS executes. A load balancing manager assigns a home processor to each thread of the executing application process tree and dispatches the process tree to the home processor. The load balancing manager determines whether a particular poaching processor of a virtual or real processor group is available to execute threads of the executing application within the home processor of a processor group. If ready or run queues of a prospective poaching processor are empty, the load balancing manager may move or poach a thread or threads from the home processor ready queue to the ready queue of the prospective poaching processor. The poaching processor executes the poached threads to provide load balancing to the information handling system (IHS).
    Type: Application
    Filed: September 13, 2010
    Publication date: March 15, 2012
    Applicant: International Business Machines Corporation
    Inventors: Men-Chow Chiang, Hong Lam Hua
  • Patent number: 7746888
    Abstract: A method, system, and computer program product are disclosed in a data processing system for avoiding data loss during network port recovery. A first network port is linked to a second network port via a network. The second network port transmits data to the first network port via the network. A determination is made that the first network port needs to be reinitialized. Prior to the first network port executing a re-initialization process, the first network port notifies the second network port to pause its data transmissions to the first network port.
    Type: Grant
    Filed: December 28, 2007
    Date of Patent: June 29, 2010
    Assignee: International Business Machines Corporation
    Inventors: Binh K. Hua, Hong Lam Hua, Sivarama K. Kodukula
  • Patent number: 7734574
    Abstract: A method, apparatus, and computer instructions for handling updates. A database is queried to determine an effect of the update on the data processing system in response to detecting an update for the data processing system. A configuration of the data processing system is used in querying the database. A health status of the data processing system is selectively modified using the response to form a modified health status in response to receiving a response from the database.
    Type: Grant
    Filed: February 17, 2005
    Date of Patent: June 8, 2010
    Assignee: International Business Machines Corporation
    Inventors: Anh Tuan Dang, Binh Hua, Hong Lam Hua, Elizabeth Silvia
  • Publication number: 20090199216
    Abstract: A method, medium and implementing processing system are provided in which the Operating System (OS) driver is divided into two parts, viz. an upper level OS driver and a lower level OS driver. The lower level OS driver sets up the adapter hardware and any adapter hardware work-around. The upper level OS driver is interfaced to the OS communication stack and each can be compiled separately. The upper OS driver is compiled and shipped with the OS to make sure it is compatible with the OS communication stack. The lower OS driver, in an exemplary embodiment, is compiled and stored in an adapter flash memory. The OS dynamically combines the upper and lower OS drivers together during the load time.
    Type: Application
    Filed: February 5, 2008
    Publication date: August 6, 2009
    Inventors: James R. Gallagher, Binh Hua, Hong Lam Hua, Wen Xiong
  • Publication number: 20080232349
    Abstract: Method, system and computer program product for transferring data in a data processing system network. A method for transferring data in a data processing system network according to the invention includes determining an adapter among a plurality of adapters that has the lowest transmit latency, and assigning data to be transferred to the adapter determined to have the lowest transmit latency. The data to be transferred is then transferred by the assigned adapter. The present invention utilizes network adapters to transfer data in a more efficient manner.
    Type: Application
    Filed: June 2, 2008
    Publication date: September 25, 2008
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: James R. Gallagher, Binh K. Hua, Hong Lam Hua, Sivarama K. Kodukula
  • Patent number: 7403479
    Abstract: Method, system and computer program product for transferring data in a data processing system network. A method for transferring data in a data processing system network according to the invention includes determining an adapter among a plurality of adapters that has the lowest transmit latency, and assigning data to be transferred to the adapter determined to have the lowest transmit latency. The data to be transferred is then transferred by the assigned adapter. The present invention utilizes network adapters to transfer data in a more efficient manner.
    Type: Grant
    Filed: October 7, 2004
    Date of Patent: July 22, 2008
    Assignee: International Business Machines Corporation
    Inventors: James R. Gallagher, Binh K. Hua, Hong Lam Hua, Sivarama K. Kodukula
  • Patent number: 7359315
    Abstract: A method, system, and computer program product are disclosed in a data processing system for avoiding data loss during network port recovery. A first network port is linked to a second network port via a network. The second network port transmits data to the first network port via the network. A determination is made that the first network port needs to be reinitialized. Prior to the first network port executing a re-initialization process, the first network port notifies the second network port to pause its data transmissions to the first network port.
    Type: Grant
    Filed: March 11, 2004
    Date of Patent: April 15, 2008
    Assignee: In-ernational Business Machines Corporation
    Inventors: Binh K. Hua, Hong Lam Hua, Sivarama K. Kodukula