Patents by Inventor Randolph S. Kolvick

Randolph S. Kolvick 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: 10846223
    Abstract: An apparatus for cache coherency between a device and a processor includes a buffer module that buffers data in a non-cache coherent space of an electronic device communicatively coupled to a processor. The apparatus includes an update module that updates at least one identifier with respect to the buffered data. The at least one identifier is stored in a cache coherent space of the electronic device. The apparatus includes a coherence notification module that notifies the processor of a cache incoherence. The cache incoherence indicates that the cache coherent space of the electronic device that includes the updated at least one identifier differs from a cache coherent space of the processor that includes a copy of the at least one identifier prior to the update.
    Type: Grant
    Filed: October 19, 2017
    Date of Patent: November 24, 2020
    Assignee: LENOVO Enterprise Solutions (Singapore) PTE. LTD
    Inventors: Makoto Ono, Jonathan R. Hinkle, William G. Holland, Randolph S. Kolvick
  • Patent number: 10482049
    Abstract: Configuring NVMe devices for redundancy and scaling includes: identifying, by a first SSD (‘Solid State Drive’) driver executing on a first CPU (‘Central Processing Unit’), address space of a first SSD coupled to the first CPU by a first PCI (‘Peripheral Component Interconnect’) switch, the first PCI switch including one or more non-transparent bridges (‘NTBs’); partitioning, by the first SSD driver, the address space of the first SSD amongst the NTBs of the first PCI switch and the first CPU, where each NTB is configured to translate CPU memory addresses received from a CPU into a drive address in the address space partitioned to the NTB; and partitioning, by the first SSD driver, a plurality of namespaces of the first SSD amongst the first CPU and the NTBs.
    Type: Grant
    Filed: February 3, 2017
    Date of Patent: November 19, 2019
    Assignee: Lenovo Enterprise Solutions (Singapore) Pte. Ltd.
    Inventors: Patrick L. Caporale, Randolph S. Kolvick, Pravin Patel, Gregory B. Pruett, Theodore B. Vojnovich
  • Publication number: 20190121738
    Abstract: An apparatus for cache coherency between a device and a processor includes a buffer module that buffers data in a non-cache coherent space of an electronic device communicatively coupled to a processor. The apparatus includes an update module that updates at least one identifier with respect to the buffered data. The at least one identifier is stored in a cache coherent space of the electronic device. The apparatus includes a coherence notification module that notifies the processor of a cache incoherence. The cache incoherence indicates that the cache coherent space of the electronic device that includes the updated at least one identifier differs from a cache coherent space of the processor that includes a copy of the at least one identifier prior to the update.
    Type: Application
    Filed: October 19, 2017
    Publication date: April 25, 2019
    Inventors: MAKOTO ONO, Jonathan R. Hinkle, William G. Holland, Randolph S. Kolvick
  • Patent number: 10180866
    Abstract: Effects of a physical memory fault are mitigated. In one example, to facilitate mitigation, memory is allocated to processing entities of a computing environment, such as applications, operating systems, or virtual machines, in a manner that minimizes impact to the computing environment in the event of a memory failure. Allocation includes using memory structure information, including, information regarding fault containment zones, to allocate memory to the processing entities. By allocating memory based on fault containment zones, a fault only affects a minimum number of processing entities.
    Type: Grant
    Filed: February 23, 2015
    Date of Patent: January 15, 2019
    Assignee: International Business Machines Corporation
    Inventors: Jerry D. Ackaret, Robert M. Dunn, Susan E. Goodwin, Sumeet Kochar, Randolph S. Kolvick, James A. O'Connor, Wilson E. Smith, Jeffrey J. Van Heuklon
  • Publication number: 20180225054
    Abstract: Configuring NVMe devices for redundancy and scaling includes: identifying, by a first SSD (‘Solid State Drive’) driver executing on a first CPU (‘Central Processing Unit’), address space of a first SSD coupled to the first CPU by a first PCI (‘Peripheral Component Interconnect’) switch, the first PCI switch including one or more non-transparent bridges (‘NTBs’); partitioning, by the first SSD driver, the address space of the first SSD amongst the NTBs of the first PCI switch and the first CPU, where each NTB is configured to translate CPU memory addresses received from a CPU into a drive address in the address space partitioned to the NTB; and partitioning, by the first SSD driver, a plurality of namespaces of the first SSD amongst the first CPU and the NTBs.
    Type: Application
    Filed: February 3, 2017
    Publication date: August 9, 2018
    Inventors: PATRICK L. CAPORALE, RANDOLPH S. KOLVICK, PRAVIN PATEL, GREGORY B. PRUETT, THEODORE B. VOJNOVICH
  • Patent number: 9851996
    Abstract: A method includes running a scale-up hypervisor on a server complex including at least one server and running a single operating system and at least one application on top of the scale-up hypervisor. The method further includes identifying a firmware update available for a first hardware component within the server complex. The scale-up hypervisor removes all workload from the first hardware component, and the identified firmware update is applied to the first hardware component while the first hardware component is idle and the hypervisor continues running the single operating system and the at least one application. Preferably, the method may be used to sequentially apply firmware updates to various hardware components across the plurality of servers without ever shutting down the entire plurality of servers.
    Type: Grant
    Filed: March 24, 2015
    Date of Patent: December 26, 2017
    Assignee: Lenovo Enterprise Solutions (Singapore) Pte. Ltd.
    Inventors: Sumeet Kochar, Randolph S. Kolvick, John M. Borkenhagen
  • Patent number: 9817735
    Abstract: Hardware component repair in a computing system while workload continues to execute on the computing system includes receiving an indication that an operational parameter of a first hardware resource of said computing system does not meet operational acceptability criteria; migrating workload of the computing system from said first hardware resource to a second hardware resource within the computing system; and halting operation of said first hardware resource for repair.
    Type: Grant
    Filed: August 11, 2015
    Date of Patent: November 14, 2017
    Assignee: Lenovo Enterprise Solutions (Singapore) Pte. Ltd.
    Inventors: John M. Borkenhagen, Sumeet Kochar, Randolph S. Kolvick
  • Publication number: 20170046236
    Abstract: Hardware component repair in a computing system while workload continues to execute on the computing system includes receiving an indication that an operational parameter of a first hardware resource of said computing system does not meet operational acceptability criteria; migrating workload of the computing system from said first hardware resource to a second hardware resource within the computing system; and halting operation of said first hardware resource for repair.
    Type: Application
    Filed: August 11, 2015
    Publication date: February 16, 2017
    Inventors: JOHN M. BORKENHAGEN, SUMEET KOCHAR, RANDOLPH S. KOLVICK
  • Publication number: 20160283221
    Abstract: A method includes running a scale-up hypervisor on a server complex including at least one server and running a single operating system and at least one application on top of the scale-up hypervisor. The method further includes identifying a firmware update available for a first hardware component within the server complex. The scale-up hypervisor removes all workload from the first hardware component, and the identified firmware update is applied to the first hardware component while the first hardware component is idle and the hypervisor continues running the single operating system and the at least one application. Preferably, the method may be used to sequentially apply firmware updates to various hardware components across the plurality of servers without ever shutting down the entire plurality of servers.
    Type: Application
    Filed: March 24, 2015
    Publication date: September 29, 2016
    Inventors: Sumeet Kochar, Randolph S. Kolvick, John M. Borkenhagen
  • Patent number: 9389937
    Abstract: Managing faulty memory pages in a computing system, including: tracking, by a page management module, a number of errors associated with a memory page; determining, by the page management module, whether the number of errors associated with the memory page exceeds a predetermined threshold; responsive to determining that the number of errors associated with the memory page exceeds the predetermined threshold, attempting, by the page management module, to retire the memory page; determining, by the page management module, whether the memory page has been successfully retired; and responsive to determining that the memory page has not been successfully retired, generating, by the page management module, a predictive failure alert.
    Type: Grant
    Filed: November 19, 2013
    Date of Patent: July 12, 2016
    Assignee: Lenovo Enterprise Solutions (Singapore) Pte. Ltd.
    Inventors: Jerry D. Ackaret, Sumeet Kochar, Randolph S. Kolvick, Wilson E. Smith
  • Patent number: 9317214
    Abstract: A memory management controller operatively coupled to a plurality of memory modules, the memory management controller including processing logic configured to: identify a plurality of memory tiers in the plurality of memory modules, each memory tier characterized by different operational characteristics; allocate a spare block of memory in each memory tier; identify a data characteristic for each of the one or more blocks of data in a plurality of memory tiers; migrate, in dependence upon the operational characteristics of each memory tier and the data characteristic for each of the one or more data blocks in the plurality of memory tiers, data in a first memory tier to the spare block of memory in a second memory tier; and migrate data in the second memory tier to the spare block of memory in the first memory tier.
    Type: Grant
    Filed: October 29, 2013
    Date of Patent: April 19, 2016
    Assignee: Lenovo Enterprise Solutions (Singapore) Pte. Ltd.
    Inventors: Randolph S. Kolvick, Makoto Ono
  • Patent number: 9298389
    Abstract: A memory management controller operatively coupled to a plurality of memory modules, the memory management controller including processing logic configured to: identify a plurality of memory tiers in the plurality of memory modules, each memory tier characterized by different operational characteristics; allocate a spare block of memory in each memory tier; identify a data characteristic for each of the one or more blocks of data in a plurality of memory tiers; migrate, in dependence upon the operational characteristics of each memory tier and the data characteristic for each of the one or more data blocks in the plurality of memory tiers, data in a first memory tier to the spare block of memory in a second memory tier; and migrate data in the second memory tier to the spare block of memory in the first memory tier.
    Type: Grant
    Filed: October 28, 2013
    Date of Patent: March 29, 2016
    Assignee: Lenovo Enterprise Solutions (Singapore) Pte. Ltd.
    Inventors: Randolph S. Kolvick, Makoto Ono
  • Patent number: 9141565
    Abstract: Memory bus attached Input/Output (‘I/O’) subsystem management in a computing system, the computing system including an I/O subsystem communicatively coupled to a memory bus, including: detecting, by an I/O subsystem device driver, a hibernation request; setting, by the I/O subsystem device driver, a predetermined memory address to a value indicating that the I/O subsystem is not to service system requests; detecting, by the I/O subsystem device driver, that the I/O subsystem device driver has been restarted; and setting, by the I/O subsystem device driver, the predetermined memory address to a value indicating that the I/O subsystem can resume servicing system requests.
    Type: Grant
    Filed: December 28, 2012
    Date of Patent: September 22, 2015
    Assignee: Lenovo Enterprise Solutions (Singapore) Pte. Ltd.
    Inventors: Jimmy G. Foster, Sr., Sumeet Kochar, Randolph S. Kolvick, Makoto Ono
  • Patent number: 9128873
    Abstract: Memory bus attached Input/Output (‘I/O’) subsystem management in a computing system, the computing system including an I/O subsystem communicatively coupled to a memory bus, including: detecting, by an I/O subsystem device driver, a hibernation request; setting, by the I/O subsystem device driver, a predetermined memory address to a value indicating that the I/O subsystem is not to service system requests; detecting, by the I/O subsystem device driver, that the I/O subsystem device driver has been restarted; and setting, by the I/O subsystem device driver, the predetermined memory address to a value indicating that the I/O subsystem can resume servicing system requests.
    Type: Grant
    Filed: December 28, 2012
    Date of Patent: September 8, 2015
    Assignee: Lenovo Enterprise Solutions (Singapore) Pte. Ltd.
    Inventors: Jimmy G. Foster, Sr., Sumeet Kochar, Randolph S. Kolvick, Makoto Ono
  • Publication number: 20150186230
    Abstract: Effects of a physical memory fault are mitigated. In one example, to facilitate mitigation, memory is allocated to processing entities of a computing environment, such as applications, operating systems, or virtual machines, in a manner that minimizes impact to the computing environment in the event of a memory failure. Allocation includes using memory structure information, including, information regarding fault containment zones, to allocate memory to the processing entities. By allocating memory based on fault containment zones, a fault only affects a minimum number of processing entities.
    Type: Application
    Filed: February 23, 2015
    Publication date: July 2, 2015
    Inventors: Jerry D. Ackaret, Robert M. Dunn, Susan E. Goodwin, Sumeet Kochar, Randolph S. Kolvick, James A. O'Connor, Wilson E. Smith, Jeffrey J. Van Heuklon
  • Publication number: 20150143054
    Abstract: Managing faulty memory pages in a computing system, including: tracking, by a page management module, a number of errors associated with a memory page; determining, by the page management module, whether the number of errors associated with the memory page exceeds a predetermined threshold; responsive to determining that the number of errors associated with the memory page exceeds the predetermined threshold, attempting, by the page management module, to retire the memory page; determining, by the page management module, whether the memory page has been successfully retired; and responsive to determining that the memory page has not been successfully retired, generating, by the page management module, a predictive failure alert.
    Type: Application
    Filed: November 21, 2013
    Publication date: May 21, 2015
    Inventors: Jerry D. Ackaret, Sumeet Kochar, Randolph S. Kolvick, Wilson E. Smith
  • Publication number: 20150143052
    Abstract: Managing faulty memory pages in a computing system, including: tracking, by a page management module, a number of errors associated with a memory page; determining, by the page management module, whether the number of errors associated with the memory page exceeds a predetermined threshold; responsive to determining that the number of errors associated with the memory page exceeds the predetermined threshold, attempting, by the page management module, to retire the memory page; determining, by the page management module, whether the memory page has been successfully retired; and responsive to determining that the memory page has not been successfully retired, generating, by the page management module, a predictive failure alert.
    Type: Application
    Filed: November 19, 2013
    Publication date: May 21, 2015
    Applicant: International Business Machines Corporation
    Inventors: JERRY D. ACKARET, SUMEET KOCHAR, RANDOLPH S. KOLVICK, WILSON E. SMITH
  • Publication number: 20150121023
    Abstract: A memory management controller operatively coupled to a plurality of memory modules, the memory management controller including processing logic configured to: identify a plurality of memory tiers in the plurality of memory modules, each memory tier characterized by different operational characteristics; allocate a spare block of memory in each memory tier; identify a data characteristic for each of the one or more blocks of data in a plurality of memory tiers; migrate, in dependence upon the operational characteristics of each memory tier and the data characteristic for each of the one or more data blocks in the plurality of memory tiers, data in a first memory tier to the spare block of memory in a second memory tier; and migrate data in the second memory tier to the spare block of memory in the first memory tier.
    Type: Application
    Filed: October 28, 2013
    Publication date: April 30, 2015
    Applicant: International Business Machines Corporation
    Inventors: Randolph S. Kolvick, Makoto Ono
  • Publication number: 20150121024
    Abstract: A memory management controller operatively coupled to a plurality of memory modules, the memory management controller including processing logic configured to: identify a plurality of memory tiers in the plurality of memory modules, each memory tier characterized by different operational characteristics; allocate a spare block of memory in each memory tier; identify a data characteristic for each of the one or more blocks of data in a plurality of memory tiers; migrate, in dependence upon the operational characteristics of each memory tier and the data characteristic for each of the one or more data blocks in the plurality of memory tiers, data in a first memory tier to the spare block of memory in a second memory tier; and migrate data in the second memory tier to the spare block of memory in the first memory tier.
    Type: Application
    Filed: October 29, 2013
    Publication date: April 30, 2015
    Inventors: Randolph S. Kolvick, Makoto Ono
  • Patent number: 9003223
    Abstract: Effects of a physical memory fault are mitigated. In one example, to facilitate mitigation, memory is allocated to processing entities of a computing environment, such as applications, operating systems, or virtual machines, in a manner that minimizes impact to the computing environment in the event of a memory failure. Allocation includes using memory structure information, including, information regarding fault containment zones, to allocate memory to the processing entities. By allocating memory based on fault containment zones, a fault only affects a minimum number of processing entities.
    Type: Grant
    Filed: September 27, 2012
    Date of Patent: April 7, 2015
    Assignee: International Business Machines Corporation
    Inventors: Jerry D. Ackaret, Robert M. Dunn, Susan E. Goodwin, Sumeet Kochar, Randolph S. Kolvick, James A. O'Connor, Wilson E. Smith, Jeffery J. Van Heuklon