Patents by Inventor David Hepkin
David Hepkin 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).
-
Publication number: 20140281118Abstract: 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: ApplicationFiled: March 15, 2013Publication date: September 18, 2014Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: David A. Hepkin, Stuart Z. Jacobs, Bruce Mealey, Naresh Nayar, Wade B. Ouren
-
Patent number: 8607239Abstract: Two or more processors that each provides a specified thread to access a shared resource that can only be accessed by one thread at a given time. A locking mechanism enables one of the threads to access the shared resource while other threads are retained in a waiting queue. Responsive to an additional thread that is not one of the specified threads being provided access the shared resource during an identified time period, and responsive to a first criterion an a second criterion being met, the additional thread accesses the shared resource before the other threads in the waiting queue.Type: GrantFiled: December 31, 2009Date of Patent: December 10, 2013Assignee: International Business Machines CorporationInventors: Vaijayanthimala K. Anand, David A. Hepkin, Dirk Michel, Bret R. Olszewski
-
Patent number: 8412691Abstract: A method includes atomically reading a next field of a current element of the linked list to determine a first value that encodes a first pointer to the first element and a first indication of an owner of the first element. The first indication of the owner is stored in a first of a plurality of multi-field reservation data structures. The operation includes determining whether the next field of the current element still indicates the first value. The operation includes reading the first element of the linked list via the first pointer if the next field of the current element still indicates the first value. If the next field of the current element indicates a current value different than the first value, the first indication of the owner is removed from the first multi-field reservation data structure, and storing and determining with the second value is repeated.Type: GrantFiled: September 10, 2010Date of Patent: April 2, 2013Assignee: International Business Machines CorporationInventors: David A. Hepkin, Stephen B. Peckham
-
Patent number: 8245013Abstract: Disclosed is a computer implemented method and computer program product to prioritize paging-in pages in a remote paging device. An arrival machine receives checkpoint data from a departure machine. The arrival machine restarts at least one process corresponding to the checkpoint data. The arrival machine determines whether a page associated with the process is pinned. The arrival machine associates the page to the remote paging device, responsive to a determination that the page is pinned. The arrival machine touches the page.Type: GrantFiled: October 10, 2008Date of Patent: August 14, 2012Assignee: International Business Machines CorporationInventors: Perinkulam I. Ganesh, David A. Hepkin, Rajeev Mishra, Mark D. Rogers
-
Patent number: 8200771Abstract: In one embodiment a method for migrating a workload from one processing resource to a second processing resource of a computing platform is disclosed. The method can include a command to migrate a workload that is processing and the process can be interrupted and some memory processes can be frozen in response to the migration command. An index table can be created that identifies memory locations that determined where the process was when it is interrupted. Table data, pinned page data, and non-private process data can be sent to the second processing resource. Contained in this data can be restart type data. The second resource or target resource can utilize this data to restart the process without the requirement of bulk data transfers providing an efficient migration process. Other embodiments are also disclosed.Type: GrantFiled: October 10, 2008Date of Patent: June 12, 2012Assignee: International Business Machines CorporationInventors: Perinkulam I. Ganesh, David A. Hepkin, Vinit Jain, Rajeev Mishra, Mark D. Rogers
-
Patent number: 8195867Abstract: Controlled partition shut-down is provided within a shared memory partition data processing system including a shared memory partition, a paging service partition, a hypervisor and a shared memory pool within physical memory. The hypervisor manages access to logical pages within the pool and page-out of pages from the pool to external paging storage via the paging service partition. A respective paging service stream exists between the paging service partition and hypervisor for each shared memory partition, with each stream including a stream state. The control method includes: responsive to a shut-down initiating event, notifying the paging service partition to shut down, and determining whether a shared memory partition is currently active, and if so, signaling the hypervisor to complete paging activity for the active memory partition and waiting for its stream state to enter a suspended or a completed state before automatically shutting down the paging service partition.Type: GrantFiled: March 13, 2009Date of Patent: June 5, 2012Assignee: International Business Machines CorporationInventors: David A. Hepkin, Carol B. Hernandez, Andrew T. Koch, Kyle A. Lucke, Naresh Nayar, Jorge R. Nogueras
-
Publication number: 20120102258Abstract: A method of dynamically reallocating memory affinity in a virtual machine after migrating the virtual machine from a source computer system to a destination computer system migrates processor states and resources used by the virtual machine from the source computer system to the destination computer system. The method maps memory of the virtual machine to processor nodes of the destination computer system. The method deletes memory mappings in processor hardware, such as translation lookaside buffers and effective-to-real address tables, for the virtual machine on the destination computer system. The method starts the virtual machine on the destination computer system in virtual real memory mode. A hypervisor running on the destination computer system receives a page fault and virtual address of a page for said virtual machine from a processor of the destination computer system and determines if the page is in local memory of the processor.Type: ApplicationFiled: October 22, 2010Publication date: April 26, 2012Applicant: International Business Machines CorporationInventors: David A. Hepkin, Peter J. Heyrman, Bret R. Olszewski
-
Publication number: 20120066192Abstract: A method includes atomically reading a next field of a current element of the linked list to determine a first value that encodes a first pointer to the first element and a first indication of an owner of the first element. The first indication of the owner is stored in a first of a plurality of multi-field reservation data structures. The operation includes determining whether the next field of the current element still indicates the first value. The operation includes reading the first element of the linked list via the first pointer if the next field of the current element still indicates the first value. If the next field of the current element indicates a current value different than the first value, the first indication of the owner is removed from the first multi-field reservation data structure, and storing and determining with the second value is repeated.Type: ApplicationFiled: September 10, 2010Publication date: March 15, 2012Applicant: International Business Machines CorporationInventors: David A. Hepkin, Stephen B. Peckham
-
Patent number: 8055876Abstract: Disclosed is a computer implemented method, apparatus and computer program product for communicating virtual memory page status to a virtual memory manager. An operating system may receive a request to free a virtual memory page from a first application. The operating system determines whether the virtual memory page is free due to an operating system page replacement. Responsive to a determination that the virtual memory page is free due to the operating system page replacement, the operating system inhibits marking the virtual memory page as unused. Finally, the operating system may insert the virtual memory page on an operating system free list.Type: GrantFiled: June 6, 2008Date of Patent: November 8, 2011Assignee: International Business Machines CorporationInventors: Matthew D. Fleming, David A. Hepkin
-
Patent number: 7979668Abstract: A method, system and computer program product for allocating real memory to virtual memory page sizes when all real memory is in use is disclosed. In response to a page fault, a page frame for a virtual page is selected. In response to determining that said page does not represent a new page, a page is paged-in into said page frame a repaging rate for a page size of the page is modified in a repaging rates data structure.Type: GrantFiled: December 31, 2008Date of Patent: July 12, 2011Assignee: International Business Machines CorporationInventors: David A. Hepkin, Thomas S. Mathews
-
Publication number: 20110161539Abstract: Embodiments of the invention provide a method, apparatus and computer program product for enabling a thread to acquire a lock associated with a shared resource, when a locking mechanism is used therewith, wherein each embodiment reduces waiting time and enhances efficiency in using the shared resource. One embodiment is associated with a plurality of processors, which includes two or more processors that each provides a specified thread to access a shared resource. The shared resource can only be accessed by one thread at a given time, a locking mechanism enables a first one of the specified threads to access the shared resource while each of the other specified threads is retained in a waiting queue, and a second one of the specified threads occupies a position of highest priority in the queue.Type: ApplicationFiled: December 31, 2009Publication date: June 30, 2011Applicant: International Business Machines CorporationInventors: Vaijayanthimala K. Anand, David A. Hepkin, Dirk Michel, Bret R. Olszewski
-
Patent number: 7971027Abstract: Disclosed is a computer implemented method and apparatus for marking as critical a virtual memory page in a data processing system. An operating system indicates to a virtual memory manager a virtual memory page selected for paging-out to disk. The operating system determines that the data processing system is using a cooperative memory over-commitment. The operating system, responsive to a determination that the data processing system is using cooperative memory over-commitment, marks the virtual memory page as critical, such that the virtual memory page remains in physical memory. The operating system, responsive to marking the virtual memory page as critical, sets the virtual memory page to a page-out state.Type: GrantFiled: June 9, 2008Date of Patent: June 28, 2011Assignee: International Business Machines CorporationInventors: Matthew D. Fleming, David A. Hepkin
-
Publication number: 20100094948Abstract: In one embodiment a method for migrating a workload from one processing resource to a second processing resource of a computing platform is disclosed. The method can include a command to migrate a workload that is processing and the process can be interrupted and some memory processes can be frozen in response to the migration command. An index table can be created that identifies memory locations that determined where the process was when it is interrupted. Table data, pinned page data, and non-private process data can be sent to the second processing resource. Contained in this data can be restart type data. The second resource or target resource can utilize this data to restart the process without the requirement of bulk data transfers providing an efficient migration process. Other embodiments are also disclosed.Type: ApplicationFiled: October 10, 2008Publication date: April 15, 2010Applicant: International Business Machines CorporationInventors: Perinkulam I. Ganesh, David A. Hepkin, Vinit Jain, Rajeev Mishra, Mark D. Rogers
-
Publication number: 20100095074Abstract: Disclosed is a computer implemented method and computer program product to prioritize paging-in pages in a remote paging device. An arrival machine receives checkpoint data from a departure machine. The arrival machine restarts at least one process corresponding to the checkpoint data. The arrival machine determines whether a page associated with the process is pinned. The arrival machine associates the page to the remote paging device, responsive to a determination that the page is pinned. The arrival machine touches the page.Type: ApplicationFiled: October 10, 2008Publication date: April 15, 2010Applicant: International Business Machines CorporationInventors: Perinkulam I. Ganesh, David A. Hepkin, Rajeev Mishra, Mark D. Rogers
-
Patent number: 7669033Abstract: Pretranslating input/output buffers in environments with multiple page sizes that include determining a pretranslation page size for an input/output buffer under an operating system that supports more than one memory page size, identifying pretranslation page frame numbers for the buffer in dependence upon the pretranslation page size, pretranslating the pretranslation page frame numbers to physical page numbers, and storing the physical page numbers in association with the pretranslation page size. Typical embodiments also include accessing the buffer, including translating a virtual memory address in the buffer to a physical memory address in dependence upon the physical page numbers and the pretranslation page size and accessing the physical memory of the buffer at the physical memory address.Type: GrantFiled: July 9, 2008Date of Patent: February 23, 2010Assignee: International Business Machines CorporationInventor: David A. Hepkin
-
Publication number: 20090307459Abstract: Disclosed is a computer implemented method, apparatus and computer program product for communicating virtual memory page status to a virtual memory manager. An operating system may receive a request to free a virtual memory page from a first application. The operating system determines whether the virtual memory page is free due to an operating system page replacement. Responsive to a determination that the virtual memory page is free due to the operating system page replacement, the operating system inhibits marking the virtual memory page as unused. Finally, the operating system may insert the virtual memory page on an operating system free list.Type: ApplicationFiled: June 6, 2008Publication date: December 10, 2009Applicant: International Business Machines CorporationInventors: Matthew D. Fleming, David A. Hepkin
-
Publication number: 20090307441Abstract: Controlled partition shut-down is provided within a shared memory partition data processing system including a shared memory partition, a paging service partition, a hypervisor and a shared memory pool within physical memory. The hypervisor manages access to logical pages within the pool and page-out of pages from the pool to external paging storage via the paging service partition. A respective paging service stream exists between the paging service partition and hypervisor for each shared memory partition, with each stream including a stream state. The control method includes: responsive to a shut-down initiating event, notifying the paging service partition to shut down, and determining whether a shared memory partition is currently active, and if so, signaling the hypervisor to complete paging activity for the active memory partition and waiting for its stream state to enter a suspended or a completed state before automatically shutting down the paging service partition.Type: ApplicationFiled: March 13, 2009Publication date: December 10, 2009Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: David A. Hepkin, Carol B. Hernandez, Andrew T. Koch, Kyle A. Lucke, Naresh Nayar, Jorge R. Nogueras
-
Publication number: 20090307462Abstract: Disclosed is a computer implemented method and apparatus for marking as critical a virtual memory page in a data processing system. An operating system indicates to a virtual memory manager a virtual memory page selected for paging-out to disk. The operating system determines that the data processing system is using a cooperative memory over-commitment. The operating system, responsive to a determination that the data processing system is using cooperative memory over-commitment, marks the virtual memory page as critical, such that the virtual memory page remains in physical memory. The operating system, responsive to marking the virtual memory page as critical, sets the virtual memory page to a page-out state.Type: ApplicationFiled: June 9, 2008Publication date: December 10, 2009Applicant: International Business Machines CorporationInventors: Matthew D. Fleming, David A. Hepkin
-
Publication number: 20090113165Abstract: A method, system and computer program product for allocating real memory to virtual memory page sizes when all real memory is in use is disclosed. In response to a page fault, a page frame for a virtual page is selected. In response to determining that said page does not represent a new page, a page is paged-in into said page frame a repaging rate for a page size of the page is modified in a repaging rates data structure.Type: ApplicationFiled: December 31, 2008Publication date: April 30, 2009Applicant: INTERNATIONAL BUISNESS MACHINES CORPORATIONInventors: David A. Hepkin, Thomas S. Mathews
-
Patent number: 7484074Abstract: A method, system and computer program product for allocating real memory to virtual memory page sizes when all real memory is in use includes, in response to a page fault, selecting a page frame for a virtual page. In response to determining that said page does not represent a new page, a page is paged-in into said page frame and a repaging rate for a page size of the page is modified in a repaging rates data structure.Type: GrantFiled: January 18, 2006Date of Patent: January 27, 2009Assignee: International Business Machines CorporationInventors: David A. Hepkin, Thomas S. Mathews