Patents by Inventor Keyur B. Desai

Keyur B. Desai 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: 20240187351
    Abstract: Systems and methods for allocating resources are disclosed. Resources such as streams are allocated using a stream credit system. Credits are issued to the clients in a manner that ensure the system is operating in a safe allocation state. The credits can be used not only to allocate resources but also to throttle clients where necessary. Credits can be granted fully, partially, and in a number greater than a request. Zero or negative credits can also be issued to throttle clients.
    Type: Application
    Filed: February 9, 2024
    Publication date: June 6, 2024
    Inventor: Keyur B. Desai
  • Patent number: 11936568
    Abstract: Systems and methods for allocating resources are disclosed. Resources such as streams are allocated using a stream credit system. Credits are issued to the clients in a manner that ensure the system is operating in a safe allocation state. The credits can be used not only to allocate resources but also to throttle clients where necessary. Credits can be granted fully, partially, and in a number greater than a request. Zero or negative credits can also be issued to throttle clients.
    Type: Grant
    Filed: November 22, 2021
    Date of Patent: March 19, 2024
    Assignee: EMC IP HOLDING COMPANY LLC
    Inventor: Keyur B. Desai
  • Publication number: 20230376425
    Abstract: A cache system that includes a reverse cache and a main cache is disclosed. The reverse cache is configured to identify candidates for insertion into a main cache. The reverse cache stores entries such as fingerprints and index values, which are representations of or that identify data. When the entry has been accessed multiple times or is a candidate for promotion based on operation of the reverse cache, data corresponding to the entry is promoted to the main cache. The main cache is configured to evict entries using recency, frequency, and time-adjustments. The main cache and the reverse cache may be similarly configured with a recent list and a frequent list but operate differently.
    Type: Application
    Filed: May 17, 2022
    Publication date: November 23, 2023
    Inventor: Keyur B. Desai
  • Publication number: 20230342269
    Abstract: One example method includes performing replication operations and/or failure recovery operations for replication operations in a computing system using matrix clocks. Each node or process in a computing system is associated with a matrix clock that reflects streams required and/or available at the source and destination nodes. As the replication operation is performed, the matrix clocks are updated. When a failure is detected or when insufficient streams are available, the nodes may be throttled until sufficient streams are available. The matrix clocks facilitate a recovery line such that replication can resume when sufficient streams are available.
    Type: Application
    Filed: April 25, 2022
    Publication date: October 26, 2023
    Inventors: Keyur B. Desai, Meeilee Chong
  • Publication number: 20230342065
    Abstract: One example method includes performing replication operations and/or failure recovery operations for replication operations in a computing system using matrix clocks and replication controllers. The replication controller includes or has access to vectors of a matrix clock. The replication controller also includes a multiplexer. The multiplexer is configured as an m×n multiplexer using the matrix clock to determine m and n. The operation is performed using the configured multiplexer. This allows an imbalance of resources to be managed by the replication controller. The matrix clock can be updated, which may result in the multiplexer being reconfigured.
    Type: Application
    Filed: July 20, 2022
    Publication date: October 26, 2023
    Inventors: Keyur B. Desai, Meeilee Chong, Abhishek Pareek
  • Publication number: 20230333985
    Abstract: A cache system that includes a reverse cache and a main cache is disclosed. The reverse cache is configured to identify candidates for insertion into a main cache. The reverse cache stores entries such as fingerprints and index values, which are representations of or that identify data. When the entry has been accessed multiple times or is a candidate for promotion based on operation of the reverse cache, data corresponding to the entry is promoted to the main cache. The main cache is configured to evict entries using recency, frequency, and time-adjustments. The main cache and the reverse cache may be similarly configured with a recent list, a frequent list, and/or ghost lists, but operate differently.
    Type: Application
    Filed: April 13, 2022
    Publication date: October 19, 2023
    Inventor: Keyur B. Desai
  • Publication number: 20230305958
    Abstract: One example method includes a cache eviction operation. Entries in a cache are maintained in an entry list that includes a recent list, a recent ghost list, a frequent list, and a frequent ghost list. When an eviction operation is initiated or triggered, timestamps of last access for the entries in the entry list are adjusted by corresponding adjustment values. Candidate entries for eviction are identified based on the adjusted timestamps of last access. At least some of the candidates are evicted from the cache.
    Type: Application
    Filed: June 1, 2023
    Publication date: September 28, 2023
    Inventors: Keyur B. Desai, Xiaobing Zhang
  • Patent number: 11765099
    Abstract: Systems and methods for allocating resources are disclosed. Resources as processing time, writes or reads are allocated. Credits are issued to the clients in a manner that ensure the system is operating in a safe allocation state. The credits can be used not only to allocate resources but also to throttle clients where necessary. Credits can be granted fully, partially, and in a number greater than requested. Zero or negative credits can also be issued to throttle clients. Segment credits are associated with identifying unique fingerprints or segments and may be allocated by determining how many credits a CPU/cores can support. This maximum number may be divided amongst clients connected with the server.
    Type: Grant
    Filed: August 26, 2022
    Date of Patent: September 19, 2023
    Assignee: EMC IP HOLDING COMPANY LLC
    Inventor: Keyur B. Desai
  • Publication number: 20230251966
    Abstract: A reverse cache for inserting data into a main cache is disclosed. The reverse cache is configured to identify candidates for insertion into a main cache. The reverse cache stores entries such as fingerprints and index values, which are representations of or that identify data. When the entry has been accessed multiple times or is a candidate for promotion based on operation of the reverse cache, data corresponding to the entry is promoted to the main cache.
    Type: Application
    Filed: February 9, 2022
    Publication date: August 10, 2023
    Inventor: Keyur B. Desai
  • Publication number: 20230251965
    Abstract: A reverse cache for inserting data into a main cache is disclosed. The reverse cache is configured to identify candidates for insertion into a main cache. The reverse cache stores entries such as fingerprints, which are representations of data. When the entry has been accessed multiple times or is a candidate for promotion based on operation of the reverse cache, data corresponding to the entry is promoted to the main cache.
    Type: Application
    Filed: February 9, 2022
    Publication date: August 10, 2023
    Inventor: Keyur B. Desai
  • Publication number: 20230244575
    Abstract: One example method includes determining a hazard value such as a Weibull hazard function value for an operation such as a recovery operation. Enablement and disablement of a read ahead cache are performed based on the hazard value. The hazard value is representative of whether accesses to a file, such as a backup, being recovered or read are sequential or random. The read ahead cache is enabled when the accesses are sequential or sufficiently sequential.
    Type: Application
    Filed: April 6, 2023
    Publication date: August 3, 2023
    Inventors: Keyur B. Desai, Dominick J. Santangelo, Divya Chukkapalli
  • Patent number: 11704201
    Abstract: One example method includes performing failure recovery operations in a computing system using matrix clocks. Each node or process in a computing system is associated with a matrix clock. As events and transitions occur in the computing systems, the matrix clocks are updated. The matrix clocks provide a chronological and casual view of the computing system and allow a recovery line to be determined in the event of system failure.
    Type: Grant
    Filed: November 30, 2021
    Date of Patent: July 18, 2023
    Assignee: DELL PRODUCTS L.P.
    Inventor: Keyur B. Desai
  • Patent number: 11669449
    Abstract: One example method includes a cache eviction operation. Entries in a cache are maintained in an entry list that includes a recent list, a recent ghost list, a frequent list, and a frequent ghost list. When an eviction operation is initiated or triggered, timestamps of last access for the entries in the entry list are adjusted by corresponding adjustment values. Candidate entries for eviction are identified based on the adjusted timestamps of last access. At least some of the candidates are evicted from the cache.
    Type: Grant
    Filed: November 30, 2021
    Date of Patent: June 6, 2023
    Assignee: DELL PRODUCTS L.P.
    Inventors: Keyur B. Desai, Xiaobing Zhang
  • Publication number: 20230168972
    Abstract: One example method includes performing failure recovery operations in a computing system using matrix clocks. Each node or process in a computing system is associated with a matrix clock. As events and transitions occur in the computing systems, the matrix clocks are updated. The matrix clocks provide a chronological and casual view of the computing system and allow a recovery line to be determined in the event of system failure.
    Type: Application
    Filed: November 30, 2021
    Publication date: June 1, 2023
    Inventor: Keyur B. Desai
  • Publication number: 20230169000
    Abstract: One example method includes a cache eviction operation. Entries in a cache are maintained in an entry list that includes a recent list, a recent ghost list, a frequent list, and a frequent ghost list. When an eviction operation is initiated or triggered, timestamps of last access for the entries in the entry list are adjusted by corresponding adjustment values. Candidate entries for eviction are identified based on the adjusted timestamps of last access. At least some of the candidates are evicted from the cache.
    Type: Application
    Filed: November 30, 2021
    Publication date: June 1, 2023
    Inventors: Keyur B. Desai, Xiaobing Zhang
  • Publication number: 20230169014
    Abstract: One example method includes a cache eviction operation. Entries in a cache are maintained in an entry list that includes a recent list and a frequent list. When an eviction operation is initiated or triggered, timestamps of last access for the entries are adjusted by corresponding adjustment values. Candidates for eviction are identified based on the adjusted timestamps of last access. At least some of the candidates are evicted from the cache.
    Type: Application
    Filed: November 30, 2021
    Publication date: June 1, 2023
    Inventors: Keyur B. Desai, Xiaobing Zhang
  • Patent number: 11650934
    Abstract: One example method includes a cache eviction operation. Entries in a cache are maintained in an entry list that includes a recent list and a frequent list. When an eviction operation is initiated or triggered, timestamps of last access for the entries are adjusted by corresponding adjustment values. Candidates for eviction are identified based on the adjusted timestamps of last access. At least some of the candidates are evicted from the cache.
    Type: Grant
    Filed: November 30, 2021
    Date of Patent: May 16, 2023
    Assignee: DELL PRODUCTS L.P.
    Inventors: Keyur B. Desai, Xiaobing Zhang
  • Patent number: 11630743
    Abstract: One example method includes determining a modulus such as a Weibull modulus for a recovery operation. Enablement and disablement of a read ahead cache are performed based on the modulus. The modulus is a linearization of a cumulative distribution function, where failures correspond to non-sequential accesses and successes correspond to sequential accesses.
    Type: Grant
    Filed: November 23, 2020
    Date of Patent: April 18, 2023
    Assignee: EMC IP HOLDING COMPANY LLC
    Inventors: Keyur B. Desai, Dominick J. Santangelo
  • Publication number: 20220407817
    Abstract: Systems and methods for allocating resources are disclosed. Resources as processing time, writes or reads are allocated. Credits are issued to the clients in a manner that ensure the system is operating in a safe allocation state. The credits can be used not only to allocate resources but also to throttle clients where necessary. Credits can be granted fully, partially, and in a number greater than requested. Zero or negative credits can also be issued to throttle clients. Segment credits are associated with identifying unique fingerprints or segments and may be allocated by determining how many credits a CPU/cores can support. This maximum number may be divided amongst clients connected with the server.
    Type: Application
    Filed: August 26, 2022
    Publication date: December 22, 2022
    Inventor: Keyur B. Desai
  • Patent number: 11431647
    Abstract: Systems and methods for allocating resources are disclosed. Resources as processing time, writes or reads are allocated. Credits are issued to the clients in a manner that ensure the system is operating in a safe allocation state. The credits can be used not only to allocate resources but also to throttle clients where necessary. Credits can be granted fully, partially, and in a number greater than requested. Zero or negative credits can also be issued to throttle clients. Segment credits are associated with identifying unique fingerprints or segments and may be allocated by determining how many credits a CPU/cores can support. This maximum number may be divided amongst clients connected with the server.
    Type: Grant
    Filed: March 17, 2021
    Date of Patent: August 30, 2022
    Assignee: EMC IP HOLDING COMPANY LLC
    Inventor: Keyur B. Desai