Patents by Inventor Justin J. Levandoski

Justin J. Levandoski 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: 11663187
    Abstract: A system includes a processor and a memory storing multiple records in a key-value data structure and processor executable instructions for managing access to records in the key-value data structure. The instructions are executable to perform operations including managing a shared atomic epoch counter and thread epoch counters, determining a maximal safe epoch as a function of the shared atomic epoch counter and the thread epoch counters, maintaining a drain list of trigger actions, and triggering the trigger actions in the drain list as a function of an update of the shared atomic epoch counter and the maximal safe epoch.
    Type: Grant
    Filed: June 14, 2022
    Date of Patent: May 30, 2023
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Badrish Chandramouli, Gunaprasaad Jeganathan, Donald Kossmann, Justin J Levandoski, James Hunter, Mike Barnett
  • Publication number: 20220309049
    Abstract: A system includes a processor and a memory storing multiple records in a key-value data structure and processor executable instructions for managing access to records in the key-value data structure. The instructions are executable to perform operations including managing a shared atomic epoch counter and thread epoch counters, determining a maximal safe epoch as a function of the shared atomic epoch counter and the thread epoch counters, maintaining a drain list of trigger actions, and triggering the trigger actions in the drain list as a function of an update of the shared atomic epoch counter and the maximal safe epoch.
    Type: Application
    Filed: June 14, 2022
    Publication date: September 29, 2022
    Inventors: Badrish Chandramouli, Gunaprasaad Jeganathan, Donald Kossmann, Justin J. Levandoski, James Hunter, Mike Barnett
  • Patent number: 11392570
    Abstract: A system includes a processor and a memory storing multiple records in a key-value data structure and processor executable instructions for managing access to records in the key-value data structure. The instructions are executable to perform operations including managing a shared atomic epoch counter and thread epoch counters, determining a maximal safe epoch as a function of the shared atomic epoch counter and the thread epoch counters, maintaining a drain list of trigger actions, and triggering the trigger actions in the drain list as a function of an update of the shared atomic epoch counter and the maximal safe epoch.
    Type: Grant
    Filed: March 9, 2018
    Date of Patent: July 19, 2022
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Badrish Chandramouli, Gunaprasaad Jeganathan, Donald Kossmann, Justin J Levandoski, James Hunter, Mike Barnett
  • Patent number: 10599485
    Abstract: A computer implemented method includes receiving multiple requests to update a data structure stored in non-volatile memory (NVM) and applying an atomic multiword update to the data structure to arbitrate access to the NVM. In a further embodiment, a computer implemented method includes allocating a descriptor for a persistent multi-word compare-and-swap operation (PMwCAS), specifying targeted addresses of words to be modified, returning an error if one of the targeted addresses contains a value not equal to a corresponding compare value, executing the operation atomically if the targeted addresses contain values that match the corresponding compare values, and aborting the operation responsive to the returned error.
    Type: Grant
    Filed: June 8, 2018
    Date of Patent: March 24, 2020
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Justin J Levandoski, Umar Farooq Minhas, Per-Ake Larson, Tianzheng Wang, Joy James Prabhu Arulraj
  • Publication number: 20190278849
    Abstract: A system includes a processor and a memory storing multiple records in a key-value data structure and processor executable instructions for managing access to records in the key-value data structure. The instructions are executable to perform operations including managing a shared atomic epoch counter and thread epoch counters, determining a maximal safe epoch as a function of the shared atomic epoch counter and the thread epoch counters, maintaining a drain list of trigger actions, and triggering the trigger actions in the drain list as a function of an update of the shared atomic epoch counter and the maximal safe epoch.
    Type: Application
    Filed: March 9, 2018
    Publication date: September 12, 2019
    Inventors: Badrish Chandramouli, Gunaprasaad Jeganathan, Donald Kossmann, Justin J. Levandoski, James Hunter, Mike Barnett
  • Publication number: 20190235933
    Abstract: A computer implemented method includes receiving multiple requests to update a data structure stored in non-volatile memory (NVM) and applying an atomic multiword update to the data structure to arbitrate access to the NVM. In a further embodiment, a computer implemented method includes allocating a descriptor for a persistent multi-word compare-and-swap operation (PMwCAS), specifying targeted addresses of words to be modified, returning an error if one of the targeted addresses contains a value not equal to a corresponding compare value, executing the operation atomically if the targeted addresses contain values that match the corresponding compare values, and aborting the operation responsive to the returned error.
    Type: Application
    Filed: June 8, 2018
    Publication date: August 1, 2019
    Inventors: Justin J. Levandoski, Umar Farooq Minhas, Per-Ake Larson, Tianzheng Wang, Joy James Prabhu Arulraj