Patents by Inventor Wade B. Ouren

Wade B. Ouren 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: 9678901
    Abstract: A technique for handling interrupts includes receiving an event notification message (ENM) that specifies an event target number (ETN) and a number of bits to ignore (NBI). The ETN identifies a specific virtual processor thread (VPT) and the NBI identifies the number of lower-order bits of the specific VPT to ignore when determining a group of VPTs that may be potentially interrupted. In response to two or more VPTs within the group of VPTs being dispatched and operating on an associated physical processor, whether multiple of the two or more VPTs do not have a pending interrupt is determined. In response to determining that multiple of the two or more VPTs do not have a pending interrupt, one of the two or more VPTs is selected to service an interrupt associated with the ENM based, at least in part, on respective preferred bits for the two or more VPTs.
    Type: Grant
    Filed: October 26, 2016
    Date of Patent: June 13, 2017
    Assignee: International Business Machines Corporation
    Inventors: Richard L. Arndt, Florian A. Auernhammer, Stuart Z. Jacobs, Wade B. Ouren
  • Publication number: 20170139854
    Abstract: A technique for handling interrupts includes receiving an event notification message (ENM) that specifies an event target number (ETN) and a number of bits to ignore (NBI). The ETN identifies a specific virtual processor thread (VPT) and the NBI identifies the number of lower-order bits of the specific VPT to ignore when determining a group of VPTs that may be potentially interrupted. In response to two or more VPTs within the group of VPTs being dispatched and operating on an associated physical processor, whether multiple of the two or more VPTs do not have a pending interrupt is determined. In response to determining that multiple of the two or more VPTs do not have a pending interrupt, one of the two or more VPTs is selected to service an interrupt associated with the ENM based, at least in part, on respective preferred bits for the two or more VPTs.
    Type: Application
    Filed: October 26, 2016
    Publication date: May 18, 2017
    Inventors: RICHARD L. ARNDT, FLORIAN A. AUERNHAMMER, STUART Z. JACOBS, WADE B. OUREN
  • Patent number: 9417899
    Abstract: Memory page de-duplication in a computer system that includes a plurality of virtual machine partitions managed by a hypervisor, where each virtual machine is assigned a different dedicated memory partition, may include: identifying, by the hypervisor, a plurality of identical memory pages in memory of one or more dedicated memory partitions; assigning, by the hypervisor, one of the identical memory pages as a master page; mapping, for each virtual machine having an identical memory page, each of the identical memory pages to the master page; and directing, by the hypervisor, reads of the memory page to the master page.
    Type: Grant
    Filed: March 14, 2013
    Date of Patent: August 16, 2016
    Assignee: International Business Machines Corporation
    Inventors: David A. Hepkin, Stuart Z. Jacobs, Bruce Mealey, Naresh Nayar, Wade B. Ouren
  • Patent number: 9342336
    Abstract: Memory page de-duplication in a computer system that includes a plurality of virtual machine partitions managed by a hypervisor, where each virtual machine is assigned a different dedicated memory partition, may include: identifying, by the hypervisor, a plurality of identical memory pages in memory of one or more dedicated memory partitions; assigning, by the hypervisor, one of the identical memory pages as a master page; mapping, for each virtual machine having an identical memory page, each of the identical memory pages to the master page; and directing, by the hypervisor, reads of the memory page to the master page.
    Type: Grant
    Filed: March 15, 2013
    Date of Patent: May 17, 2016
    Assignee: International Business Machines Corporation
    Inventors: David A. Hepkin, Stuart Z. Jacobs, Bruce Mealey, Naresh Nayar, Wade B. Ouren
  • Patent number: 9058287
    Abstract: Relocating data in a virtualized environment maintained by a hypervisor administering access to memory with a Cache Page Table (‘CPT’) and a Physical Page Table (‘PPT’), the CPT and PPT including virtual to physical mappings. Relocating data includes converting the virtual to physical mappings of the CPT to virtual to logical mappings; establishing a Logical Memory Block (‘LMB’) relocation tracker that includes logical addresses of an LMB, source physical addresses of the LMB, target physical addresses of the LMB, a translation block indicator for each relocation granule, and a pin count associated with each relocation granule; establishing a PPT entry tracker including PPT entries corresponding to the LMB to be relocated; relocating the LMB in a number of relocation granules including blocking translations to the relocation granules during relocation; and removing the logical addresses from the LMB relocation tracker.
    Type: Grant
    Filed: August 27, 2012
    Date of Patent: June 16, 2015
    Assignee: International Business Machines Corporation
    Inventors: Stuart Z. Jacobs, David A. Larson, Wade B. Ouren, Edward C. Prosser, Kenneth C. Vossen
  • Patent number: 9043563
    Abstract: In a computer system that includes multiple nodes and multiple logical partitions, a dynamic partition manager computes current memory affinity and potential memory affinity to help determine whether a reallocation of resources between nodes may improve memory affinity for a logical partition or for the computer system. If so, the reallocation of resources is performed so memory affinity for the logical partition or computer system is improved. Memory affinity is computed relative to the physical layout of the resources according to a hardware domain hierarchy that includes a plurality of primary domains and a plurality of secondary domains.
    Type: Grant
    Filed: December 7, 2012
    Date of Patent: May 26, 2015
    Assignee: International Business Machines Corporation
    Inventors: Daniel C. Birkestrand, Peter J. Heyrman, Wade B. Ouren, Edward C. Prosser
  • Patent number: 9009421
    Abstract: In a computer system that includes multiple nodes and multiple logical partitions, a dynamic partition manager computes current memory affinity and potential memory affinity to help determine whether a reallocation of resources between nodes may improve memory affinity for a logical partition or for the computer system. If so, the reallocation of resources is performed so memory affinity for the logical partition or computer system is improved. Memory affinity is computed relative to the physical layout of the resources according to a hardware domain hierarchy that includes a plurality of primary domains and a plurality of secondary domains.
    Type: Grant
    Filed: November 13, 2012
    Date of Patent: April 14, 2015
    Assignee: International Business Machines Corporation
    Inventors: Daniel C. Birkestrand, Peter J. Heyrman, Wade B. Ouren, Edward C. Prosser
  • Publication number: 20150058519
    Abstract: Embodiments described herein identify hot pages associated with a virtual machine that is selected for hibernation or for migration from one computing system to another. For example, before hibernating a virtual machine, a hypervisor monitors the entries in a page table (i.e., a virtual translation table) to see what data pages have corresponding entries in the page table. If a data page has a corresponding entry in the page table, the hypervisor may designate that page as hot. In one embodiment, the hypervisor may update a page map that lists the data pages associated with the virtual machine and whether those data pages are designated as hot. The page map may then be stored during the hibernation process. Before the hibernated virtual machine is resumed, the hypervisor may use the page map to load the hot pages into memory and begin executing the virtual machine.
    Type: Application
    Filed: August 22, 2013
    Publication date: February 26, 2015
    Applicant: International Business Machines Corporation
    Inventors: Troy D. ARMSTRONG, Daniel C. BIRKESTRAND, Wade B. OUREN, Edward C. PROSSER, Kenneth C. VOSSEN
  • Publication number: 20150058520
    Abstract: Embodiments described herein identify hot pages associated with a virtual machine that is selected for hibernation or for migration from one computing system to another. For example, before migrating a virtual machine, a hypervisor monitors the entries in a page table (e.g., a virtual translation table) to see what data pages have corresponding entries in the page table. If a data page has a corresponding entry in the page table, the hypervisor may designate that page as hot. A source computing system may transmit the hot data pages to a target computing system which loads the pages into memory. After loading the hot pages into memory, the source computing system may cease executing the virtual machine while the target computing system begins to execute the virtual machine. The rest of the data pages associated with the virtual machine may be transmitted to the target computing system subsequently.
    Type: Application
    Filed: August 22, 2013
    Publication date: February 26, 2015
    Applicant: International Business Machines Corporation
    Inventors: Troy D. ARMSTRONG, Daniel C. BIRKESTRAND, Wade B. OUREN, Edward C. PROSSER, Kenneth C. VOSSEN
  • Publication number: 20150058522
    Abstract: Embodiments described herein identify hot pages associated with a virtual machine that is selected for hibernation or for migration from one computing system to another. For example, before migrating a virtual machine, a hypervisor monitors the entries in a page table (e.g., a virtual translation table) to see what data pages have corresponding entries in the page table. If a data page has a corresponding entry in the page table, the hypervisor may designate that page as hot. A source computing system may transmit the hot data pages to a target computing system which loads the pages into memory. After loading the hot pages into memory, the source computing system may cease executing the virtual machine while the target computing system begins to execute the virtual machine. The rest of the data pages associated with the virtual machine may be transmitted to the target computing system subsequently.
    Type: Application
    Filed: October 17, 2013
    Publication date: February 26, 2015
    Applicant: International Business Machines Corporation
    Inventors: Troy D. ARMSTRONG, Daniel C. BIRKESTRAND, Wade B. OUREN, Edward C. PROSSER, Kenneth C. VOSSEN
  • Publication number: 20150058521
    Abstract: Embodiments described herein identify hot pages associated with a virtual machine that is selected for hibernation or for migration from one computing system to another. For example, before hibernating a virtual machine, a hypervisor monitors the entries in a page table (i.e., a virtual translation table) to see what data pages have corresponding entries in the page table. If a data page has a corresponding entry in the page table, the hypervisor may designate that page as hot. In one embodiment, the hypervisor may update a page map that lists the data pages associated with the virtual machine and whether those data pages are designated as hot. The page map may then be stored during the hibernation process. Before the hibernated virtual machine is resumed, the hypervisor may use the page map to load the hot pages into memory and begin executing the virtual machine.
    Type: Application
    Filed: October 17, 2013
    Publication date: February 26, 2015
    Applicant: International Business Machines Corporation
    Inventors: Troy D. ARMSTRONG, Daniel C. BIRKESTRAND, Wade B. OUREN, Edward C. PROSSER, Kenneth C. VOSSEN
  • Publication number: 20140281118
    Abstract: Memory page de-duplication in a computer system that includes a plurality of virtual machine partitions managed by a hypervisor, where each virtual machine is assigned a different dedicated memory partition, may include: identifying, by the hypervisor, a plurality of identical memory pages in memory of one or more dedicated memory partitions; assigning, by the hypervisor, one of the identical memory pages as a master page; mapping, for each virtual machine having an identical memory page, each of the identical memory pages to the master page; and directing, by the hypervisor, reads of the memory page to the master page.
    Type: Application
    Filed: March 15, 2013
    Publication date: September 18, 2014
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: David A. Hepkin, Stuart Z. Jacobs, Bruce Mealey, Naresh Nayar, Wade B. Ouren
  • Publication number: 20140281117
    Abstract: Memory page de-duplication in a computer system that includes a plurality of virtual machine partitions managed by a hypervisor, where each virtual machine is assigned a different dedicated memory partition, may include: identifying, by the hypervisor, a plurality of identical memory pages in memory of one or more dedicated memory partitions; assigning, by the hypervisor, one of the identical memory pages as a master page; mapping, for each virtual machine having an identical memory page, each of the identical memory pages to the master page; and directing, by the hypervisor, reads of the memory page to the master page.
    Type: Application
    Filed: March 14, 2013
    Publication date: September 18, 2014
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: David A. Hepkin, Stuart Z. Jacobs, Bruce Mealey, Naresh Nayar, Wade B. Ouren
  • Publication number: 20140136801
    Abstract: In a computer system that includes multiple nodes and multiple logical partitions, a dynamic partition manager computes current memory affinity and potential memory affinity to help determine whether a reallocation of resources between nodes may improve memory affinity for a logical partition or for the computer system. If so, the reallocation of resources is performed so memory affinity for the logical partition or computer system is improved. Memory affinity is computed relative to the physical layout of the resources according to a hardware domain hierarchy that includes a plurality of primary domains and a plurality of secondary domains.
    Type: Application
    Filed: December 7, 2012
    Publication date: May 15, 2014
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Daniel C. Birkestrand, Peter J. Heyrman, Wade B. Ouren, Edward C. Prosser
  • Publication number: 20140136800
    Abstract: In a computer system that includes multiple nodes and multiple logical partitions, a dynamic partition manager computes current memory affinity and potential memory affinity to help determine whether a reallocation of resources between nodes may improve memory affinity for a logical partition or for the computer system. If so, the reallocation of resources is performed so memory affinity for the logical partition or computer system is improved. Memory affinity is computed relative to the physical layout of the resources according to a hardware domain hierarchy that includes a plurality of primary domains and a plurality of secondary domains.
    Type: Application
    Filed: November 13, 2012
    Publication date: May 15, 2014
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Daniel C. Birkestrand, Peter J. Heyrman, Wade B. Ouren, Edward C. Prosser
  • Patent number: 8688923
    Abstract: Dynamic control of memory affinity is provided for a shared memory logical partition within a shared memory partition data processing system having a plurality of nodes. The memory affinity control approach includes: determining one or more home node assignments for the shared memory logical partition, with each assigned home node being one node of the plurality of nodes of the system; determining a desired physical page level per node for the shared memory logical partition; and allowing the shared memory partition to run and using the home node assignment(s) and its desired physical page level(s) in the dispatching of tasks to physical processors in the nodes and in hypervisor page memory management to dynamically control memory affinity of the shared memory logical partition in the data processing system.
    Type: Grant
    Filed: August 15, 2012
    Date of Patent: April 1, 2014
    Assignee: International Business Machines Corporation
    Inventors: Stuart Z. Jacobs, David A. Larson, Wade B. Ouren, Edward C. Prosser, Kenneth C. Vossen
  • Patent number: 8607020
    Abstract: Hypervisor managed memory paging is provided in a data processing system having multiple logical partitions. The data processing system includes a shared memory pool defined within physical memory. The shared memory pool includes a volume of physical memory with dynamically adjustable sub-volumes or sets of physical pages associated with the multiple logical partitions. Each sub-volume or set is associated with a particular logical partition and includes mapped logical memory pages for that logical partition. A hypervisor memory manager interfaces the multiple logical partitions and the shared memory pool, and manages access to logical memory pages within the shared memory pool. The hypervisor memory manager further manages page-out and page-in of logical memory pages from the shared memory pool to one or more external paging devices. This page-out and page-in managing by the hypervisor memory manager is transparent to the multiple logical partitions.
    Type: Grant
    Filed: March 13, 2009
    Date of Patent: December 10, 2013
    Assignee: International Business Machines Corporation
    Inventors: Stuart Z. Jacobs, Andrew T. Koch, David A. Larson, Kyle A. Lucke, Wade B. Ouren, Kenneth C. Vossen
  • Patent number: 8495302
    Abstract: In an embodiment, a target number of discretionary pages is calculated for a first partition. If the target number of discretionary pages for the first partition is less than a number of the discretionary pages that are allocated to the first partition, a result page is found that is allocated to the first partition and the result page is deallocated from the first partition. If the target number of discretionary pages for the first partition is greater than the number of the discretionary pages that are allocated to the first partition, a free page is allocated to the first partition.
    Type: Grant
    Filed: November 30, 2011
    Date of Patent: July 23, 2013
    Assignee: International Business Machines Corporation
    Inventors: Wade B. Ouren, Edward C. Prosser, Kenneth C. Vossen
  • Publication number: 20120324144
    Abstract: Relocating data in a virtualized environment maintained by a hypervisor administering access to memory with a Cache Page Table (‘CPT’) and a Physical Page Table (‘PPT’), the CPT and PPT including virtual to physical mappings. Relocating data includes converting the virtual to physical mappings of the CPT to virtual to logical mappings; establishing a Logical Memory Block (‘LMB’) relocation tracker that includes logical addresses of an LMB, source physical addresses of the LMB, target physical addresses of the LMB, a translation block indicator for each relocation granule, and a pin count associated with each relocation granule; establishing a PPT entry tracker including PPT entries corresponding to the LMB to be relocated; relocating the LMB in a number of relocation granules including blocking translations to the relocation granules during relocation; and removing the logical addresses from the LMB relocation tracker.
    Type: Application
    Filed: August 27, 2012
    Publication date: December 20, 2012
    Applicant: International Business Machines Corporation
    Inventors: Stuart Z. Jacobs, David A. Larson, Wade B. Ouren, Edward c. Prosser, Kenneth C. Vossen
  • Publication number: 20120311274
    Abstract: Dynamic control of memory affinity is provided for a shared memory logical partition within a shared memory partition data processing system having a plurality of nodes. The memory affinity control approach includes: determining one or more home node assignments for the shared memory logical partition, with each assigned home node being one node of the plurality of nodes of the system; determining a desired physical page level per node for the shared memory logical partition; and allowing the shared memory partition to run and using the home node assignment(s) and its desired physical page level(s) in the dispatching of tasks to physical processors in the nodes and in hypervisor page memory management to dynamically control memory affinity of the shared memory logical partition in the data processing system.
    Type: Application
    Filed: August 15, 2012
    Publication date: December 6, 2012
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Stuart Z. JACOBS, David A. LARSON, Wade B. OUREN, Edward C. PROSSER, Kenneth C. VOSSEN