Patents by Inventor Roy E. Clark

Roy E. Clark 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: 10788994
    Abstract: A system, computer program product, and computer-executable method for managing flash devices within a data storage environment utilized by an application of one or more applications, wherein the application accesses the managed flash devices through a pool of flash storage provided by the data storage, the system, computer program product, and computer-executable method comprising receiving a data I/O from the application, analyzing the data I/O directed toward the pool of flash storage in relation to the flash devices, and managing the flash devices based on data I/Os directed toward the pool of flash storage by the application.
    Type: Grant
    Filed: December 30, 2014
    Date of Patent: September 29, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: John S. Harwood, Robert W. Beauchamp, Roy E. Clark, Dragan Savic
  • Patent number: 10509731
    Abstract: Methods and apparatus for providing for a cache replacement policy for page caches for storage having a first memory tier having regions and virtual memory having mmaps of ones of the regions in the first memory tier. In an embodiment, the cache replacement policy includes setting a color hint to a first one of the cached pages, wherein the color hint includes a value indicating hotness of the first one of the cached pages.
    Type: Grant
    Filed: September 30, 2014
    Date of Patent: December 17, 2019
    Assignee: EMC IP Holding Company LLC
    Inventors: Adrian Michaud, Roy E. Clark, Kenneth J. Taylor
  • Patent number: 10235291
    Abstract: Methods and apparatus for computer systems having first and second memory tier having regions, physical memory having page caches that are shareable with multiple ones of the regions in the first memory tier and the regions in the second memory tier, and virtual memory having mmaps of ones of the regions in the first memory tier and ones of the regions in the second memory tier, wherein the mmaps are associated with multiple ones of the pages caches.
    Type: Grant
    Filed: September 20, 2016
    Date of Patent: March 19, 2019
    Assignee: EMC Corporation
    Inventors: Adrian Michaud, Roy E. Clark, Kenneth J. Taylor
  • Patent number: 10235054
    Abstract: A method and systems for caching utilize first and second caches, which may include a dynamic random-access memory (DRAM) cache and a next generation non-volatile memory (NGNVM) cache such as NAND flash memory. The methods and systems may be used for memory caching and/or page caching. The second caches are managed in an exclusive fashion, resulting in an aggregate cache having a storage capacity generally equal to the sum of individual cache storage capacities. Cache free lists may be associated with the first and second page caches and pages within a cache free list may be mapped back to an associated cache without accessing a backing store. Data can be migrated between the first cache and the second caches based upon access heuristics and application hints.
    Type: Grant
    Filed: December 9, 2014
    Date of Patent: March 19, 2019
    Assignee: EMC IP Holding Company LLC
    Inventors: Roy E. Clark, Adrian Michaud
  • Patent number: 10049046
    Abstract: Methods and apparatus for providing region zero-fill on demand for tiered memory including a first region in a first memory tier having a page cache in physical memory, where virtual memory includes a mmap of the first region. An input can be controlled between zeroes and the first region to the page cache.
    Type: Grant
    Filed: September 30, 2014
    Date of Patent: August 14, 2018
    Assignee: EMC IP HOLDING COMPANY LLC
    Inventors: Adrian Michaud, Roy E. Clark, Kenneth J. Taylor
  • Patent number: 9971709
    Abstract: Described are techniques for migrating data. A source data storage system includes a source device and a target data storage system includes a target device. A passive path and an active path are provided for a host to access data of a logical device. The host recognizes the passive path and the active path as paths to the logical device. The passive path is between the host and the source data storage system. The active path is between the host and the target data storage system and used in connection with proxying at least some requests directed to the logical device received from the host through the target data storage system while migrating data for the logical device from the source device to the target device. Migrating is performed to migrate data for the logical device from the source device to the target device. Migrating is controlled by a migration module executing on the target data storage system that copies data from the source device to the target device.
    Type: Grant
    Filed: September 29, 2015
    Date of Patent: May 15, 2018
    Assignee: EMC IP Holding Company LLC
    Inventors: Matthew Long, Roy E. Clark, Dennis Duprey, David Harvey, Walter A. O'Brien, III
  • Patent number: 9858193
    Abstract: A computer-implemented method, computer program product and computing system for defining a cache storage portion within a cache storage device coupled to a computing device. An application storage portion is defined within the cache storage device coupled to the computing device. The cache storage portion is configured to store cache data and the application storage portion is configured to store application data.
    Type: Grant
    Filed: May 13, 2016
    Date of Patent: January 2, 2018
    Assignee: EMC IP Holding Company LLC
    Inventors: Roy E. Clark, Randall H. Shain, Barry Ader, Daniel S. Cobb
  • Patent number: 9811286
    Abstract: A method, computer program product, and computing system for defining a storage space having a defined capacity within a storage system. The storage system includes a frontend system and a backend system. A first portion of the storage space is located within the frontend system. A second portion of the storage space is located within the backend system. Usage of a data item stored within the storage space is monitored to identify a usage pattern. The data item is migrated to either the first portion of the storage space or the second portion of the storage space based, at least in part, upon the usage pattern.
    Type: Grant
    Filed: December 28, 2012
    Date of Patent: November 7, 2017
    Assignee: EMC IP Holding Company LLC
    Inventors: Randall H. Shain, Arieh Don, Roy E. Clark, Philip Derbeko, Yaron Dar, Alex Veprinsky
  • Patent number: 9672148
    Abstract: Methods and apparatus to provide application access to a flash device having page cache memory and storage class memory via a bus by mapping a user process virtual address space, wherein the process for the application resides on a host having a processor with direct cache-line access to the page cache memory, wherein the user process virtual address space includes at least a partial mapping of physical address windows for one or more separate flash devices.
    Type: Grant
    Filed: June 30, 2014
    Date of Patent: June 6, 2017
    Assignee: EMC IP HOLDING COMPANY LLC
    Inventors: Adrian Michaud, Roy E. Clark
  • Patent number: 9495292
    Abstract: A computer-executable method, system, and computer program product of managing a hierarchical data storage system, wherein the data storage system includes a first level of one or more hosts, a second level of one or more storage appliances, and a data storage array, the computer-executable method, system, and computer program product comprising receiving an I/O request from a first host of the one or more hosts, wherein the I/O request relates to a portion of data on the data storage array, analyzing the I/O request to determine a status of the portion of data on the data storage system, based on the determination, providing an update to a second host of the one or more hosts based on the I/O request, wherein the portion of data is cached on the second host of the one or more hosts, and processing I/O request by sending I/O request to data storage array.
    Type: Grant
    Filed: December 31, 2013
    Date of Patent: November 15, 2016
    Assignee: EMC IP Holding Company, LLC
    Inventors: Randall H. Shain, Roy E. Clark, Alexandr Veprinsky, Arieh Don, Philip Derbeko, Yaron Dar
  • Patent number: 9478274
    Abstract: Methods and apparatus for computer systems having first and second memory tier having regions, physical memory having page caches that are shareable with multiple ones of the regions in the first memory tier and the regions in the second memory tier, and virtual memory having mmaps of ones of the regions in the first memory tier and ones of the regions in the second memory tier, wherein the mmaps are associated with multiple ones of the pages caches.
    Type: Grant
    Filed: June 25, 2014
    Date of Patent: October 25, 2016
    Assignee: EMC CORPORATION
    Inventors: Adrian Michaud, Roy E. Clark, Kenneth J. Taylor
  • Patent number: 9438688
    Abstract: A method, computer program product, and computing system for defining a first server and a second server within a server cluster. The first server includes a first cache system and the first and second servers are coupled to a data array that includes a LUN. The LUN is reserved for exclusive access by the first server, thus generating a first server reservation. Data associated with the LUN is cached within the first cache system of the first server. A loss of the first server reservation is sensed. In response to a loss of the first server reservation, the first cache system of the first server is purged.
    Type: Grant
    Filed: September 22, 2015
    Date of Patent: September 6, 2016
    Assignee: EMC Corporation
    Inventors: Roy E. Clark, Philip Derbeko, Arieh Don, Yaron Dar
  • Patent number: 9424175
    Abstract: A method, computer program product, and computing system for receiving a write request on a first cache system, wherein the write request identifies new content to be written to a data array. A write request content identifier associated with the new content is compared to a plurality of content identifiers included within a content directory for the first cache system to determine if a matching content identifier exists. Each of the plurality of content identifiers is associated with a piece of previously-written content included within the first cache system. If a matching content identifier is identified, content on the data array is copied from a first location on the data array associated with the matching content identifier to a second location on the data array associated with the write request content identifier.
    Type: Grant
    Filed: November 30, 2011
    Date of Patent: August 23, 2016
    Assignee: EMC Corporation
    Inventors: Roy E. Clark, Alex Veprinsky
  • Patent number: 9367452
    Abstract: A computer-implemented method, computer program product and computing system for defining a cache storage portion within a cache storage device coupled to a computing device. An application storage portion is defined within the cache storage device coupled to the computing device. The cache storage portion is configured to store cache data and the application storage portion is configured to store application data.
    Type: Grant
    Filed: September 30, 2011
    Date of Patent: June 14, 2016
    Assignee: EMC Corporation
    Inventors: Roy E. Clark, Randall H. Shain, Barry Ader, Daniel S. Cobb
  • Patent number: 9367453
    Abstract: A computer-implemented method, computer program product and computing system for moving at least a portion of cache data from a first cache storage device coupled to a first computing device included within a first virtual machine to a shared storage device. The at least a portion of cache data is moved from the shared storage device to a second cache storage device coupled to a second computing device included within a second virtual machine.
    Type: Grant
    Filed: September 30, 2011
    Date of Patent: June 14, 2016
    Assignee: EMC Corporation
    Inventors: Roy E. Clark, Randall H. Shain, Robert W. Beauchamp, Michel F. Fisher
  • Patent number: 9335941
    Abstract: A method, system, and computer program product comprising using a tracking structure to map a first portion and a second portion of a non-volatile storage medium to a logical representation of the non-volatile storage medium; wherein the first portion is presented by the logical representation as writable storage and using the tracking structure to enable the logical representation to present the data written to the second portion as the data corresponding to the write in the first portion.
    Type: Grant
    Filed: February 25, 2015
    Date of Patent: May 10, 2016
    Assignee: EMC Corporation
    Inventor: Roy E Clark
  • Patent number: 9268711
    Abstract: A method, computer program product, and computing system for receiving a read request on a first cache system, wherein the read request identifies previously-written content included within a data array. A read request content identifier associated with the previously-written content identified in the read request is received from the data array. The read request content identifier associated with the previously-written content identified in the read request is compared to a plurality of content identifiers included within a content directory for the first cache system to determine if a matching content identifier exists. Each of the plurality of content identifiers is associated with a piece of previously-written content included within the first cache system.
    Type: Grant
    Filed: April 17, 2014
    Date of Patent: February 23, 2016
    Assignee: EMC Corporation
    Inventors: Roy E. Clark, Alex Veprinsky
  • Patent number: 9268696
    Abstract: A method, computer program product, and computing system for receiving a read request on a first cache system, wherein the read request identifies previously-written content included within a data array. The previously-written content identified in the read request is obtained from the data array. A read request content identifier is generated for the previously-written content identified in the read request. The read request content identifier associated with the previously-written content identified in the read request is compared to a plurality of content identifiers included within a content directory for the first cache system to determine if a matching content identifier exists. Each of the plurality of content identifiers is associated with a piece of previously-written content included within the first cache system.
    Type: Grant
    Filed: April 11, 2014
    Date of Patent: February 23, 2016
    Assignee: EMC Corporation
    Inventors: Roy E. Clark, Alex Veprinsky
  • Patent number: 9268693
    Abstract: A method, computer program product, and computing system for receiving a read request on a first cache system, wherein the read request identifies previously-written content included within a data array. If the previously-written content identified in the read request is stored within the first cache system in a compressed format, and the previously-written content identified in the read request is stored within the data array in an uncompressed format; a determination is made as to if it is less computationally expensive to obtain from the data array the previously-written content in an uncompressed format.
    Type: Grant
    Filed: March 27, 2014
    Date of Patent: February 23, 2016
    Assignee: EMC Corporation
    Inventors: Roy E. Clark, Alex Veprinsky
  • Patent number: 9208098
    Abstract: A method, computer program product, and computing system for receiving a read request on a first cache system, wherein the read request identifies previously-written content included within a data array. The previously-written content identified in the read request may be obtained from the data array. The previously-written content identified in the read request may be compressed, thus generating compressed previously-written content. A compression ratio may be determined for the compressed previously-written content.
    Type: Grant
    Filed: November 30, 2011
    Date of Patent: December 8, 2015
    Assignee: EMC Corporation
    Inventors: Roy E. Clark, Alex Veprinsky