Patents by Inventor Clay Mayers
Clay Mayers 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: 20230359377Abstract: A method for dispatching input-output in a system. The system may include a centralized processing circuit, a plurality of persistent storage targets, a first input-output processor, and a second input-output processor. The method may include determining whether the first input-output processor is connected to a first target of the plurality of persistent storage targets; determining whether the second input-output processor is connected to the first target; and in response to determining that both the first input-output processor is connected to the first target, and the second input-output processor is connected to the first target, dispatching a first plurality of input-output requests, each to either the first input-output processor or the second input-output processor, the dispatching being in proportion to a service rate of the first input-output processor to the first target and a service rate of the second input-output processor to the first target, respectively.Type: ApplicationFiled: July 20, 2023Publication date: November 9, 2023Inventors: Zhengyu Yang, Nithya Ramakrishnan, Allen Russell Andrews, Sudheendra Grama Sampath, T. David Evans, Clay Mayers
-
Patent number: 11740815Abstract: A method for dispatching input-output in a system. The system may include a centralized processing circuit, a plurality of persistent storage targets, a first input-output processor, and a second input-output processor. The method may include determining whether the first input-output processor is connected to a first target of the plurality of persistent storage targets; determining whether the second input-output processor is connected to the first target; and in response to determining that both the first input-output processor is connected to the first target, and the second input-output processor is connected to the first target, dispatching a first plurality of input-output requests, each to either the first input-output processor or the second input-output processor, the dispatching being in proportion to a service rate of the first input-output processor to the first target and a service rate of the second input-output processor to the first target, respectively.Type: GrantFiled: August 30, 2021Date of Patent: August 29, 2023Assignee: Samsung Electronics Co., Ltd.Inventors: Zhengyu Yang, Nithya Ramakrishnan, Allen Russell Andrews, Sudheendra Grama Sampath, T. David Evans, Clay Mayers
-
Patent number: 11507592Abstract: A method of adapting a first key-value store to a second key-value store may include determining a conversion strategy based on one or more characteristics of the first key-value store and one or more characteristics of the second key-value store, converting the second key-value store to a converted key-value store based on the conversion strategy, and mapping the first key-value store to the converted key-value store based on a mapping function. The converted key-value store may be accessed on-the-fly. A data storage system may include a key-value interface configured to provide access to a lower key-value store, and a key-value adapter coupled to the key-value interface and configured to adapt an upper key-value store to the lower key-value store, wherein the key-value adapter may be configured to adapt at least two different types of the upper key-value store to the lower key-value store.Type: GrantFiled: January 30, 2020Date of Patent: November 22, 2022Inventors: Zhengyu Yang, Thomas Edward Rainey, III, Michael Kurt Gehlen, Ping Terence Wong, Venkatraman Balasubramanian, Olufogorehan Adetayo Tunde-Onadele, Nithya Ramakrishnan, T. David Evans, Clay Mayers
-
Patent number: 11403220Abstract: An apparatus, a method, a method of manufacturing an apparatus, and a method of constructing an integrated circuit are provided. A processor of an application server layer detects a degree of a change in a workload in an input/output stream received through a network from one or more user devices. The processor determines a degree range, from a plurality of preset degree ranges, that the degree of the change in the workload is within. The processor determines a distribution strategy, from among a plurality of distribution strategies, to distribute the workload across one or more of a plurality of solid state devices (SSDs) in a performance cache tier of a centralized multi-tier storage pool, based on the determined degree range. The processor distributes the workload across the one or more of the plurality of solid state devices based on the determined distribution strategy.Type: GrantFiled: August 28, 2020Date of Patent: August 2, 2022Inventors: Zhengyu Yang, Morteza Hoseinzadeh, Thomas David Evans, Clay Mayers, Thomas Bolt
-
Patent number: 11240294Abstract: A load balancing system includes: a centralized queue; a pool of resource nodes connected to the centralized queue; one or more processors; and memory coupled to the one or more processors and storing instructions that, when executed by the one or more processors, cause the one or more processors to: monitor a queue status of the centralized queue to identify a bursty traffic period; calculate an index value for a load associated with the bursty traffic period; select a load balancing strategy based on the index value; distribute the load to the pool of resource nodes based on the load balancing strategy; observe a state of the pool of resource nodes in response to the load balancing strategy; calculate a reward based on the observed state; and adjust the load balancing strategy based on the reward.Type: GrantFiled: December 6, 2019Date of Patent: February 1, 2022Assignee: Samsung Electronics Co., Ltd.Inventors: Venkatraman Balasubramanian, Olufogorehan Adetayo Tunde-Onadele, Zhengyu Yang, Ping Terence Wong, Nithya Ramakrishnan, T. David Evans, Clay Mayers
-
Patent number: 11216190Abstract: A system and method for managing input output queue pairs. In some embodiments, the method includes calculating a system utilization ratio, the system utilization ratio being a ratio of: an arrival rate of input output requests, to a service rate; determining whether: the system utilization ratio has exceeded a first threshold utilization during a time period exceeding a first threshold length, and adding a new queue pair is expected to improve system performance; and in response to determining: that the system utilization ratio has exceeded the first threshold utilization during a time period exceeding the first threshold length, and that adding a new queue pair is expected to improve system performance: adding a new queue pair.Type: GrantFiled: August 9, 2019Date of Patent: January 4, 2022Assignee: Samsung Electronics Co., Ltd.Inventors: Zhengyu Yang, Nithya Ramakrishnan, Allen Russell Andrews, Sudheendra G. Sampath, T. David Evans, Clay Mayers
-
Publication number: 20210389891Abstract: A method for dispatching input-output in a system. The system may include a centralized processing circuit, a plurality of persistent storage targets, a first input-output processor, and a second input-output processor. The method may include determining whether the first input-output processor is connected to a first target of the plurality of persistent storage targets; determining whether the second input-output processor is connected to the first target; and in response to determining that both the first input-output processor is connected to the first target, and the second input-output processor is connected to the first target, dispatching a first plurality of input-output requests, each to either the first input-output processor or the second input-output processor, the dispatching being in proportion to a service rate of the first input-output processor to the first target and a service rate of the second input-output processor to the first target, respectively.Type: ApplicationFiled: August 30, 2021Publication date: December 16, 2021Inventors: Zhengyu Yang, Nithya Ramakrishnan, Allen Russell Andrews, Sudheendra Grama Sampath, T. David Evans, Clay Mayers
-
Patent number: 11144226Abstract: A method for dispatching input-output in a system. The system may include a centralized processing circuit, a plurality of persistent storage targets, a first input-output processor, and a second input-output processor. The method may include determining whether the first input-output processor is connected to a first target of the plurality of persistent storage targets; determining whether the second input-output processor is connected to the first target; and in response to determining that both the first input-output processor is connected to the first target, and the second input-output processor is connected to the first target, dispatching a first plurality of input-output requests, each to either the first input-output processor or the second input-output processor, the dispatching being in proportion to a service rate of the first input-output processor to the first target and a service rate of the second input-output processor to the first target, respectively.Type: GrantFiled: July 1, 2019Date of Patent: October 12, 2021Assignee: Samsung Electronics Co., Ltd.Inventors: Zhengyu Yang, Nithya Ramakrishnan, Allen Russell Andrews, Sudheendra Grama Sampath, T. David Evans, Clay Mayers
-
Publication number: 20210124754Abstract: A method of adapting a first key-value store to a second key-value store may include determining a conversion strategy based on one or more characteristics of the first key-value store and one or more characteristics of the second key-value store, converting the second key-value store to a converted key-value store based on the conversion strategy, and mapping the first key-value store to the converted key-value store based on a mapping function. The converted key-value store may be accessed on-the-fly. A data storage system may include a key-value interface configured to provide access to a lower key-value store, and a key-value adapter coupled to the key-value interface and configured to adapt an upper key-value store to the lower key-value store, wherein the key-value adapter may be configured to adapt at least two different types of the upper key-value store to the lower key-value store.Type: ApplicationFiled: January 30, 2020Publication date: April 29, 2021Inventors: Zhengyu YANG, Thomas Edward RAINEY, III, Michael Kurt GEHLEN, Ping Terence WONG, Venkatraman BALASUBRAMANIAN, Olufogorehan Adetayo TUNDE-ONADELE, Nithya RAMAKRISHNAN, T. David EVANS, Clay MAYERS
-
Publication number: 20210058453Abstract: A load balancing system includes: a centralized queue; a pool of resource nodes connected to the centralized queue; one or more processors; and memory coupled to the one or more processors and storing instructions that, when executed by the one or more processors, cause the one or more processors to: monitor a queue status of the centralized queue to identify a bursty traffic period; calculate an index value for a load associated with the bursty traffic period; select a load balancing strategy based on the index value; distribute the load to the pool of resource nodes based on the load balancing strategy; observe a state of the pool of resource nodes in response to the load balancing strategy; calculate a reward based on the observed state; and adjust the load balancing strategy based on the reward.Type: ApplicationFiled: December 6, 2019Publication date: February 25, 2021Inventors: Venkatraman Balasubramanian, Olufogorehan Adetayo Tunde-Onadele, Zhengyu Yang, Ping Terence Wong, Nithya Ramakrishnan, T. David Evans, Clay Mayers
-
Publication number: 20200394137Abstract: An apparatus, a method, a method of manufacturing an apparatus, and a method of constructing an integrated circuit are provided. A processor of an application server layer detects a degree of a change in a workload in an input/output stream received through a network from one or more user devices. The processor determines a degree range, from a plurality of preset degree ranges, that the degree of the change in the workload is within. The processor determines a distribution strategy, from among a plurality of distribution strategies, to distribute the workload across one or more of a plurality of solid state devices (SSDs) in a performance cache tier of a centralized multi-tier storage pool, based on the determined degree range. The processor distributes the workload across the one or more of the plurality of solid state devices based on the determined distribution strategy.Type: ApplicationFiled: August 28, 2020Publication date: December 17, 2020Inventors: Zhengyu YANG, Morteza HOSEINZADEH, Thomas David EVANS, Clay MAYERS, Thomas BOLT
-
Publication number: 20200387312Abstract: A system and method for managing input output queue pairs. In some embodiments, the method includes calculating a system utilization ratio, the system utilization ratio being a ratio of: an arrival rate of input output requests, to a service rate; determining whether: the system utilization ratio has exceeded a first threshold utilization during a time period exceeding a first threshold length, and adding a new queue pair is expected to improve system performance; and in response to determining: that the system utilization ratio has exceeded the first threshold utilization during a time period exceeding the first threshold length, and that adding a new queue pair is expected to improve system performance: adding a new queue pair.Type: ApplicationFiled: August 9, 2019Publication date: December 10, 2020Inventors: Zhengyu Yang, Nithya Ramakrishnan, Allen Russell Andrews, Sudheendra G. Sampath, T. David Evans, Clay Mayers
-
Publication number: 20200326868Abstract: A method for dispatching input-output in a system. The system may include a centralized processing circuit, a plurality of persistent storage targets, a first input-output processor, and a second input-output processor. The method may include determining whether the first input-output processor is connected to a first target of the plurality of persistent storage targets; determining whether the second input-output processor is connected to the first target; and in response to determining that both the first input-output processor is connected to the first target, and the second input-output processor is connected to the first target, dispatching a first plurality of input-output requests, each to either the first input-output processor or the second input-output processor, the dispatching being in proportion to a service rate of the first input-output processor to the first target and a service rate of the second input-output processor to the first target, respectively.Type: ApplicationFiled: July 1, 2019Publication date: October 15, 2020Inventors: Zhengyu Yang, Nithya Ramakrishnan, Allen Russell Andrews, Sudheendra Grama Sampath, T. David Evans, Clay Mayers
-
Patent number: 10795583Abstract: A system for performing auto-tiering is disclosed. The system may include a plurality of storage devices offering a plurality of resources and organized into storage tiers. The storage devices may store data for virtual machines. A receiver may receive I/O commands and performance data for the virtual machines. A transmitter may transmit responses to the I/O commands. An auto-tiering controller may select storage tiers to store the data for the virtual machines and may migrate data between storage tiers responsive to the performance data. The selection of the storage tiers may optimize the performance of all virtual machines across all storage tiers, factoring the change in performance of the virtual machines and a migration cost to migrate data between storage tiers.Type: GrantFiled: February 2, 2018Date of Patent: October 6, 2020Assignee: SAMSUNG ELECTRONICS CO., LTD.Inventors: Zhengyu Yang, T. David Evans, Allen Andrews, Clay Mayers, Thomas Rory Bolt
-
Publication number: 20190196969Abstract: An apparatus, a method, a method of manufacturing an apparatus, and a method of constructing an integrated circuit are provided. A processor of an application server layer detects a degree of a change in a workload in an input/output stream received through a network from one or more user devices. The processor determines a degree range, from a plurality of preset degree ranges, that the degree of the change in the workload is within. The processor determines a distribution strategy, from among a plurality of distribution strategies, to distribute the workload across one or more of a plurality of solid state devices (SSDs) in a performance cache tier of a centralized multi-tier storage pool, based on the determined degree range. The processor distributes the workload across the one or more of the plurality of solid state devices based on the determined distribution strategy.Type: ApplicationFiled: May 4, 2018Publication date: June 27, 2019Inventors: Zhengyu YANG, Morteza HOSEINZADEH, Thomas David EVANS, Clay MAYERS, Thomas BOLT
-
Publication number: 20190026030Abstract: A system for performing auto-tiering is disclosed. The system may include a plurality of storage devices offering a plurality of resources and organized into storage tiers. The storage devices may store data for virtual machines. A receiver may receive I/O commands and performance data for the virtual machines. A transmitter may transmit responses to the I/O commands. An auto-tiering controller may select storage tiers to store the data for the virtual machines and may migrate data between storage tiers responsive to the performance data. The selection of the storage tiers may optimize the performance of all virtual machines across all storage tiers, factoring the change in performance of the virtual machines and a migration cost to migrate data between storage tiers.Type: ApplicationFiled: February 2, 2018Publication date: January 24, 2019Inventors: Zhengyu YANG, T. David EVANS, Allen ANDREWS, Clay MAYERS, Thomas Rory BOLT
-
Patent number: 9442859Abstract: A method and system for transferring data from mass storage devices to the high speed data cache in a manner that imposes minimal overhead to the normal input/output mechanism and minimizes the load placed on the device being cached is disclosed herein. Minimizing the load placed on the slower device and minimizing the overhead of processing input/output requests results in optimal performance.Type: GrantFiled: February 23, 2013Date of Patent: September 13, 2016Assignee: SAMSUNG ELECTRONICS CO., LTD.Inventors: Thomas R. Bolt, Clay Mayers
-
Patent number: 9241030Abstract: A computer system with a scanner web service set up as a local host is provided. An HTTP message is received from a client-side web application code client-side running in a web browser on the computer system by the scanner web service. A message based on the received HTTP message is sent to a scanner driver that is in communication with a scanner connected to or integrated with the computer system. Scanned image information is received from the scanner driver, and is provided to the client-side web application code running the web browser.Type: GrantFiled: February 27, 2015Date of Patent: January 19, 2016Assignee: EMC CorporationInventors: Clay Mayers, Rao Kota, Kirill Vanyukov
-
Publication number: 20150244783Abstract: A computer system with a scanner web service set up as a local host is provided. An HTTP message is received from a client-side web application code client-side running in a web browser on the computer system by the scanner web service. A message based on the received HTTP message is sent to a scanner driver that is in communication with a scanner connected to or integrated with the computer system. Scanned image information is received from the scanner driver, and is provided to the client-side web application code running the web browser.Type: ApplicationFiled: February 27, 2015Publication date: August 27, 2015Inventors: Clay Mayers, Rao Kota, Kirill Vanyukov
-
Patent number: 8994967Abstract: A computer system with a scanner web service set up as a local host is provided. An HTTP message is received from a client-side web application code client-side running in a web browser on the computer system by the scanner web service. A message based on the received HTTP message is sent to a scanner driver that is in communication with a scanner connected to or integrated with the computer system. Scanned image information is received from the scanner driver, and is provided to the client-side web application code running the web browser.Type: GrantFiled: June 29, 2012Date of Patent: March 31, 2015Assignee: EMC CorporationInventors: Clay Mayers, Rao Kota, Kirill Vanyukov