Patents Examined by Kalpit Parikh
  • Patent number: 11188458
    Abstract: The memory controller controls at least one memory device including a plurality of stream storage areas. The memory controller comprises a buffer, a write history manager, a write controller, and a garbage collection controller. The buffer stores write data. The write history manager stores write count values for each of the plurality of stream storage areas and generates write history information indicating a write operation frequency for each of the plurality of stream storage areas based on the write count values. The write controller controls the at least one memory device to store the write data provided from the buffer. The garbage collection controller controls the at least one memory device to perform a garbage collection operation on a target stream storage area selected from among the plurality of stream storage areas based on the write history information.
    Type: Grant
    Filed: December 3, 2019
    Date of Patent: November 30, 2021
    Assignee: SK hynix Inc.
    Inventors: Hee Chan Shin, Yong Seok Oh, Ju Hyun Kim, Jin Yeong Kim
  • Patent number: 11175845
    Abstract: A system and method for adding a migration file group to a hierarchical storage management (HSM) system for data co-location are presented. A file group attribute may be automatically added to one or more files in the HSM system to enable one or more applications to co-locate data. The one or more files, having a similar file group attribute, may be migrated from one or more storage devices in a first tier in the HSM system to a tape storage device in an nth tier of the HSM system to enable recalling of the one or more files in the HSM system.
    Type: Grant
    Filed: April 5, 2018
    Date of Patent: November 16, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Hiroyuki Miyoshi, Hiroshi Araki, Takeshi Ishimoto
  • Patent number: 11163683
    Abstract: Disclosed is a computer implemented method to dynamically adjust prefetch depth, the method comprising sending, to a first prefetch machine, a first prefetch request configured to fetch a first data address from a first stream at a first depth to a lower level cache. The method also comprises sending, to a second prefetcher, a second prefetch request configured to fetch the first data address from the first stream at a second depth to a highest-level cache. The method further comprises determining the first data address is not in the lower level cache, determining, that the first prefetch request is in the first prefetch machine, and determining, in response to the first prefetch request being in the first prefetch machine, that the first stream is at steady state. The method comprises adjusting, in response to determining that the first stream is at steady state, the first depth.
    Type: Grant
    Filed: August 1, 2019
    Date of Patent: November 2, 2021
    Assignee: International Business Machines Corporation
    Inventors: Mohit Karve, Edmund Joseph Gieske, Vivek Britto, George W. Rohrbaugh, III
  • Patent number: 11163689
    Abstract: A memory system may include: a nonvolatile memory device; a write buffer; and a controller suitable for: checking whether first write data have been committed at a point of time that a flush operation is performed on the write buffer, separating the flush operation into first and second flush operations which do not overlap each other but are consecutive to each other, according to the check result, and performing the first and second flush operations, when the first write data grouped into a transaction and second write data, which are not grouped into a transaction, are mixed and stored in the write buffer according to the sequence of the write data, among the write data stored in the write buffer, the controller may select and may store the first write data which are committed, in a first storage region of the nonvolatile memory device during the first flush operation.
    Type: Grant
    Filed: February 27, 2019
    Date of Patent: November 2, 2021
    Assignee: SK hynix Inc.
    Inventor: Hae-Gi Choi
  • Patent number: 11157207
    Abstract: A data processing system includes a host configured to handle data in response to an input entered from an external device. The data processing system further includes a plurality of memory systems engaged with the host, wherein the plurality of memory systems are configured to store or output the data in response to a request generated by the host. A first memory system among the plurality of memory systems can store metadata for the plurality of memory systems.
    Type: Grant
    Filed: July 31, 2019
    Date of Patent: October 26, 2021
    Assignee: SK hynix Inc.
    Inventor: Ik-Sung Oh
  • Patent number: 11157188
    Abstract: Techniques for processing data may include: receiving a candidate data block; computing a distance using a distance function, wherein the distance is an entropy-based distance and denotes a measurement of similarity between the candidate data block and a target data block; and determining, using the distance, whether to perform data deduplication of the candidate data block with respect to the target data block to identify at least one sub-block of the candidate data block that is a duplicate of at least one sub-block of the target data block. If the distance is less than a threshold, it may be expected to have a matching sub-block between the candidate and target data blocks. The distance may be a difference between entropy values for the candidate and target data blocks. The first entropy value may be used to determine whether to compress or perform partial deduplication for the candidate data block.
    Type: Grant
    Filed: April 24, 2019
    Date of Patent: October 26, 2021
    Assignee: EMC IP Holding Company LLC
    Inventors: Ivan Bassov, Sorin Faibish, Istvan Gonczi, Philippe Armangau
  • Patent number: 11157372
    Abstract: A technique is configured to reduce an amount of memory (i.e., memory footprint) usage by each storage node of a cluster needed to store metadata while providing fast and efficient servicing of data in accordance with storage requests issued by a client of the cluster. Illustratively, a block identifier (ID) is used to identify a block of data serviced by the storage node. Metadata embodied as mappings between block IDs and locations of data blocks in the cluster are illustratively maintained in map fragments. A map fragment may be embodied as “active” map fragment or a “frozen” map fragment. An active map fragment refers to a map fragment that has space available to store a mapping, whereas a frozen map fragment refers to a map fragment that is full, i.e., has no available space for storing a mapping.
    Type: Grant
    Filed: April 25, 2019
    Date of Patent: October 26, 2021
    Assignee: NetApp, Inc.
    Inventor: Christopher Cason
  • Patent number: 11151056
    Abstract: Techniques for providing an efficient virtualization layer structure in a data storage system. The techniques include implementing multiple layers of indirection for accessing host data in the data storage system, including a mapping layer, a virtualization layer, and a physical layer. The virtualization layer includes virtual layer blocks (VLBs), each VLB including virtual pointers. Each virtual pointer is pointed to by one or more leaf pointers in the mapping layer, and points to a data block in the physical layer. The techniques include generating, for each virtual pointer in the VLB, reference count metadata to keep track of the number of leaf pointers pointing to the virtual pointer, and maintaining, in a metadata page, the reference count metadata for the virtual pointers in a three (3)-way mirror. The techniques include maintaining each VLB of the virtualization layer in a RAID stripe across multiple physical drives in the data storage system.
    Type: Grant
    Filed: April 25, 2019
    Date of Patent: October 19, 2021
    Assignee: EMC IP Holding Company LLC
    Inventors: Vladimir Shveidel, Uri Shabi, Ronen Gazit
  • Patent number: 11144215
    Abstract: A method, an apparatus, and an electronic device for controlling memory access are disclosed. According to an embodiment, there is provided a method for controlling access to a memory including a plurality of memory modules configured in parallel. The method comprises: receiving an access instruction including an addressing field which comprise a parallel control field for controlling parallel access, a module address field for indicating a memory module, and an in-module address field for indicating an addresses within a memory module; parsing the access instructions to determine the parallel control field, the module address field and the in-module address field; determining one or more memory modules to be accessed based on the parallel control field and the module address field; and accessing one or more addresses which are within the one or more memory modules to be accessed and assigned by the in-module address field.
    Type: Grant
    Filed: November 27, 2019
    Date of Patent: October 12, 2021
    Assignee: Beijing Horizon Robotics Technology Research and Development Co., Ltd.
    Inventors: Honghe Tan, Liang Chen
  • Patent number: 11132300
    Abstract: A system includes a device coupleable to a first memory. The device includes a second memory to cache data from the first memory. The second memory is to store a set of compressed pages of the first memory and a set of page descriptors. Each compressed page includes a set of compressed data blocks. Each page descriptor represents a corresponding page and includes a set of location identifiers that identify the locations of the compressed data blocks of the corresponding page in the second memory. The device further includes compression logic to compress data blocks of a page to be stored to the second memory and decompression logic to decompress compressed data blocks of a page accessed from the second memory.
    Type: Grant
    Filed: July 11, 2013
    Date of Patent: September 28, 2021
    Assignee: ADVANCED MICRO DEVICES, INC.
    Inventors: Gabriel H. Loh, James M. O'Connor
  • Patent number: 11126553
    Abstract: Techniques are presented for dynamically allocating memory between containers.
    Type: Grant
    Filed: January 31, 2019
    Date of Patent: September 21, 2021
    Assignee: EMC IP Holding Company LLC
    Inventors: Jean-Pierre Bono, Sudhir Srinivasan
  • Patent number: 11126359
    Abstract: Inventive aspects include a method, apparatus, and system for partitioning and processing graph data for large-scale graphs. Such may include, in a partitioning pre-processing step, assigning a plurality of destination vertices to a plurality of partitions such that each destination vertex of the plurality of destination vertices is uniquely assigned to only one partition from among the plurality of partitions. Such may also include, in a main execution of external graph processing step, (i) loading a given partition of destination vertices from among the plurality of partitions from a solid state drive (SSD) into a main memory of a computing machine, (ii) streaming one or more chunks of source vertex data from the SSD into the main memory of the computing machine, and (iii) performing graph processing based at least on the loaded given partition of destination vertices and the streamed one or more chunks of source vertex data.
    Type: Grant
    Filed: January 23, 2019
    Date of Patent: September 21, 2021
    Inventors: Nima Elyasi, Changho Choi
  • Patent number: 11119654
    Abstract: Provided are a computer program product, system, and method for determining an optimal storage environment for data sets and for migrating data sets. Metadata for each application indicates storage pools used by the application to store data sets, wherein each storage pool is configured in one of a plurality of storage environments using different organization schemes to store data sets. The metadata for at least one application indicates storage pools to store the data sets for the application that are allocated from different storage environments. The metadata for an application is processed to determine a data set for the application stored in a first storage pool implemented in a first storage environment that should be stored in a second storage environment. The determined data set from the first storage pool to a second storage pool implemented in the second storage environment.
    Type: Grant
    Filed: July 10, 2018
    Date of Patent: September 14, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Clea A. Zolotow, Thomas W. Bish, Bernhard J. Klingenberg, Petra Kopp, John V. Delaney
  • Patent number: 11112985
    Abstract: Techniques for processing data may include: receiving a candidate data block; computing a distance using a distance function, wherein the distance denotes a measurement of similarity between the candidate data block and a target data block; and determining, using the distance, whether to perform data deduplication of the candidate data block with respect to the target data block to identify at least one sub-block of the candidate data block that is a duplicate of at least one sub-block of the target data block. The distance may be computed using a bit-wise logical exclusive-or operation of the contents of the candidate data block and the target data block. The distance may be computed using a bit-wise logical exclusive-or operation of digests computed for the candidate and target data blocks using a distance preserving hash function. The target and candidate block may be similar if the distance is less than a threshold.
    Type: Grant
    Filed: April 24, 2019
    Date of Patent: September 7, 2021
    Assignee: EMC IP Holding Company LLC
    Inventors: Ivan Bassov, Philippe Armangau, Sorin Faibish, Istvan Gonczi
  • Patent number: 11093382
    Abstract: Methods and systems are provided for compression and reconstruction of system data. A controller of a memory system includes a compression component for searching for a pattern of an array of system data including a plurality of elements and compressing the array of system data based on the pattern. The array of system data includes neighbor elements corresponding to a first pattern, among the plurality of elements. The compressed system data includes: first information including a first bit indicating a first content; and second information including a first bitmap, each bit of the first bitmap indicating whether a corresponding element is a first element among the neighbor elements of the first pattern.
    Type: Grant
    Filed: January 23, 2019
    Date of Patent: August 17, 2021
    Assignee: SK hynix Inc.
    Inventors: Igor Novogran, Alexander Ivaniuk
  • Patent number: 11086787
    Abstract: A system and method of handling data access demands in a processor virtual cache that includes: determining if a virtual cache data access demand missed because of a difference in the context tag of the data access demand and a corresponding entry in the virtual cache with the same virtual address as the data access demand; in response to the virtual cache missing, determining whether the alias tag valid bit is set in the corresponding entry of the virtual cache; in response to the alias tag valid bit not being set, determining whether the virtual cache data access demand is a synonym of the corresponding entry in the virtual cache; and in response to the virtual access demand being a synonym of the corresponding entry in the virtual cache with the same virtual address but a different context tag, updating information in a tagged entry in an alias table.
    Type: Grant
    Filed: February 5, 2019
    Date of Patent: August 10, 2021
    Assignee: International Business Machines Corporation
    Inventors: David Campbell, Bryan Lloyd
  • Patent number: 11074199
    Abstract: Some examples described relate to securing a memory device of a computing system. For instance, a method may comprise comparing a command for the memory device to each command in a list of commands. The command is accepted when the command matches an authorized command in the list of commands. The accepted command is issued to the memory device.
    Type: Grant
    Filed: January 27, 2016
    Date of Patent: July 27, 2021
    Assignee: Hewlett Packard Enterprise Development LP
    Inventors: David F. Heinrich, Theodore F. Emerson, Don A. Dykes, Sukhamoy Som
  • Patent number: 11073997
    Abstract: Provided is a storage system and a data management method of a storage system enabling system-wide data deduplication. The storage system has a plurality of storage apparatuses in which one or a plurality of logical volumes are provided. Based on data information of data obtained through the generation of a request to write to a logical volume in the storage system, one storage apparatus among the plurality of storage apparatuses calculates, for a plurality of combinations of storage apparatus and logical volume in the storage system, a data capacity when duplicate data is removed for each of the storage apparatuses, calculates the total of the calculated data capacities as the total capacity of the whole storage system, and performs optimal arrangement arithmetic processing to output information indicating a combination with the smallest total capacity among the plurality of combinations.
    Type: Grant
    Filed: September 11, 2019
    Date of Patent: July 27, 2021
    Assignee: HITACHI, LTD.
    Inventors: Yoshio Sonokawa, Yuki Kuroda, Hirokazu Ogasawara, Kozue Fujii
  • Patent number: 11074194
    Abstract: Managing direct memory access (DMA) by: defining a translate control entity (TCE) cache flag for cache memory addresses, receiving a DMA TCE related request, checking the TCE cache flag status, and completing the TCE related request according to the TCE cache flag status.
    Type: Grant
    Filed: February 21, 2019
    Date of Patent: July 27, 2021
    Assignee: International Business Machines Corporation
    Inventors: Sakethan Reddy Kotta, Eric Norman Lais, Rama Krishna Hazari, Kumaraswamy Sripathy
  • Patent number: 11074179
    Abstract: A method for managing objects stored in memory is presented. The method may include receiving, by a memory allocator in a garbage collected system, a first free memory chunk. The method may include creating a node to associate with the first free memory chunk and ensuring that a first memory region containing the node will be considered to be free memory during a sweeping phase of the garbage collected system.
    Type: Grant
    Filed: November 2, 2017
    Date of Patent: July 27, 2021
    Assignee: Hewlett Packard Enterprise Development LP
    Inventors: Lokesh Gidra, Evan R Kirshenbaum