Patents Examined by Edmund H Kwong
  • Patent number: 12045479
    Abstract: A storage node can include one or more processors and one or more storage disks, where the one or more storage disks include one or more local physical extents (PEs) that are local to the storage node. The storage node can include a protection pool driver executed by the one or more processors to run in a kernel space of the storage node, where the protection pool driver includes a local disk manager (LDM) and an array group module (AGRP). The LDM can be configured to manage the one or more local PEs at the one or more storage disks. The AGRP can include a number of storage arrays, where each of the storage arrays includes one or more virtual disks, where each of the one or more virtual disks is associated to at least a local PE or an external PE external to the storage node.
    Type: Grant
    Filed: May 7, 2021
    Date of Patent: July 23, 2024
    Assignee: EMC IP HOLDING COMPANY LLC
    Inventors: Paul Nehse, Michael Thiels, Devendra Kulkarni
  • Patent number: 12045480
    Abstract: An apparatus comprises a processing device that includes a processor coupled to a memory. The processing device is configured to identify a source multi-path device in first multi-pathing software, to create a target multi-path device in second multi-pathing software different than the first multi-pathing software, to copy a set of paths of the source multi-path device to the target multi-path device, to add to the set of paths of the source multi-path device a new path to the target multi-path device, and to remove paths other than the new path from the source multi-path device. Such an arrangement illustratively provides non-disruptive switching of path selection functionality of a host device from the source multi-path device of the first multi-pathing software to the target multi-path device of the second multi-pathing software. The source and target multi-path devices illustratively utilize different storage access protocols, such as respective SCSI and NVMe access protocols.
    Type: Grant
    Filed: December 14, 2021
    Date of Patent: July 23, 2024
    Assignee: Dell Products L.P.
    Inventors: Sanjib Mallick, Kurumurthy Gokam, Mohammad Salim Akhtar
  • Patent number: 12039188
    Abstract: The present disclosure relates to systems, methods, and computer-readable media for tracking memory usage data on a memory controller system and providing a mechanism whereby one or multiple accessing agents (e.g., computing nodes, applications, virtual machines) can access memory usage data for a memory resource managed by a memory controller. Indeed, the systems described herein facilitate generation of and access to heatmaps having memory usage data thereon. The systems described herein describe features and functionality related to generating and maintaining the heatmaps as well as providing access to the heatmaps to a variety of accessing agents. This memory tracking and accessing is performed using low processing overhead while providing useful information to accessing agents in connection with memory resources managed by a memory controller.
    Type: Grant
    Filed: August 24, 2022
    Date of Patent: July 16, 2024
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Lisa Ru-Feng Hsu, Aninda Manocha, Ishwar Agarwal, Daniel Sebastian Berger, Stanko Novakovic, Janaina Barreiro Gambaro Bueno, Vishal Soni
  • Patent number: 12014064
    Abstract: Techniques are provided for mapping storage volumes to storage processing nodes in a storage system. One method comprises determining a number of input/output operations associated with each of multiple storage volumes, wherein the input/output operations associated with a given storage volume are processed by a corresponding storage processing node based on a mapping of the storage volumes to the storage processing nodes; obtaining constraints that limit the input/output operations processed by at least a subset of the storage processing nodes; identifying at least one possible mapping of the storage volumes to the storage processing nodes that satisfy the constraints; and selecting an alternative mapping of the storage volumes to the storage processing nodes by applying a designated function to the at least one possible mapping. The input/output operations may comprise read operations and write operations, and the read and write operations may be balanced separately.
    Type: Grant
    Filed: February 26, 2021
    Date of Patent: June 18, 2024
    Assignee: EMC IP Holding Company LLC
    Inventors: Amihai Savir, Avitan Gefen
  • Patent number: 12001695
    Abstract: A plurality of logical storage segments of storage drives of a plurality of storage nodes are identified. At least one of the storage nodes includes at least a first logical storage segment and a second logical storage segment included in the plurality of logical storage segments. A distributed and replicated data store using a portion of the plurality of logical storage segments that excludes at least the second logical storage segment is provided. An available storage capacity metric associated with the plurality of logical storage segments is determined to meet a first threshold. In response to the determination that the available storage capacity metric meets the first threshold, at least the second logical storage segment is dynamically deployed for use in providing the distributed and replicated data store in a manner that increases a storage capacity of the data store while maintaining a fault tolerance policy of the distributed and replicated data store.
    Type: Grant
    Filed: December 15, 2022
    Date of Patent: June 4, 2024
    Assignee: Cohesity, Inc.
    Inventors: Venkatesh Pallipadi, Sachin Jain, Deepak Ojha, Apurv Gupta
  • Patent number: 11977488
    Abstract: Provided in the present invention are a K-Truss graph-based storage system cache prefetching method, a system, and a medium, where method steps of the present invention include: when a data request stream in a system arrives, an access mode of the data request stream is determined; if said mode is a sequence mode, then n sequence blocks after a data block corresponding to the data request stream are prefetched and serve as prefetch data; otherwise, the data block corresponding to the data request stream serves as a query vertex to query a K-Truss graph, a truss structure matching the query vertex is obtained, and data of a data block from within the truss structure is obtained and serves as prefetch data; the K-Truss graph is updated according to the data block corresponding to the data request stream; and lastly a prefetch data block is prefetched into a main memory.
    Type: Grant
    Filed: June 23, 2020
    Date of Patent: May 7, 2024
    Assignee: SUN YAT-SEN UNIVERSITY
    Inventors: Yutong Lu, Zhiguang Chen, Jia Ma
  • Patent number: 11977784
    Abstract: The present invention proposes a dynamic resources allocation method and system for guaranteeing tail latency SLO of latency-sensitive applications. A plurality of request queues is created in a storage server node of a distributed storage system with different types of requests located in different queues, and thread groups are allocated to the request queues according to logical thread resources of the service node and target tail latency requirements, and thread resources are dynamically allocated in real time, and the thread group of each request queue is bound to physical CPU resources of the storage server node. The client sends an application's requests to the storage server node; the storage server node stores the request in a request queue corresponding to its type, uses the thread group allocated for the current queue to process the application's requests, and sends responses to the client.
    Type: Grant
    Filed: July 6, 2020
    Date of Patent: May 7, 2024
    Assignee: Institute of Computing Technology, Chinese Academy of Sciences
    Inventors: Liuying Ma, Zhenqing Liu, Jin Xiong, Dejun Jiang
  • Patent number: 11972132
    Abstract: A device includes a data processing engine array having a plurality of data processing engines organized in a grid having a plurality of rows and a plurality of columns. Each data processing engine includes a core, a memory module including a memory and a direct memory access engine. Each data processing engine includes a stream switch connected to the core, the direct memory access engine, and the stream switch of one or more adjacent data processing engines. Each memory module includes a first memory interface directly coupled to the core in the same data processing engine and one or more second memory interfaces directly coupled to the core of each of the one or more adjacent data processing engines.
    Type: Grant
    Filed: December 22, 2022
    Date of Patent: April 30, 2024
    Assignee: Xilinx, Inc.
    Inventors: Juan J. Noguera Serra, Goran H K Bilski, Jan Langer, Baris Ozgul, Richard L. Walke, Ralph D. Wittig, Kornelis A. Vissers, Tim Tuan, David Clarke
  • Patent number: 11966602
    Abstract: Methods, systems, and devices for refresh counters in a memory system are described. In some examples, a memory device may include two or more counters configured to increment a respective count based on refresh operations performed on a memory array. A comparison may be made between two or more of the respective counts, which may include determining a difference between the respective counts or a difference in rate of incrementing. A memory device may transmit an indication to a host device based on determining a difference between counters, and the memory device, the host device, or both, may perform various operations or enter various operational modes based on the determined difference.
    Type: Grant
    Filed: January 24, 2023
    Date of Patent: April 23, 2024
    Assignee: Micron Technology, Inc.
    Inventors: Scott E. Schaefer, Aaron P. Boehm
  • Patent number: 11947817
    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer-storage media, for memory mapping to enhance data cube performance. In some implementations, a system accesses a data set that includes data to be processed into a data cube. The system generates a memory-mapped data cube that includes a plurality of files including different segments of the data cube. Generating the memory-mapped data cube includes allocating memory-mapped buffers in non-volatile data storage and responding to subsequent memory allocation requests with addresses for the buffers such that components of the data cube are accumulated in the buffers. The memory-mapped data cube is loaded by storing the files of the data cube in disk-based storage, mapping the stored files of the data cube to virtual memory addresses, and caching portions of the data cube in random-access memory.
    Type: Grant
    Filed: November 15, 2021
    Date of Patent: April 2, 2024
    Assignee: MicroStrategy Incorporated
    Inventors: Qianping Jiang, Cheng Guo, Rixin Liao, Cezary Raczko, Xiaoyan Yu
  • Patent number: 11941301
    Abstract: A technique maintains online access to data stored in a plurality of storage devices during a hardware upgrade in which the plurality of storage devices moves between storage processor enclosures. The technique involves providing, from the plurality of storage devices, online access to the data while each storage device of the plurality of storage devices resides in a first storage processor enclosure. The technique further involves providing, from the plurality of storage devices, online access to the data while the plurality of storage devices is moved from the first storage processor enclosure to a second storage processor enclosure (e.g., transferring each storage devices one by one before triggering a rebuild process). The technique further involves providing, from the plurality of storage devices, online access to the data while each storage device of the plurality of storage devices resides in the second storage processor enclosure.
    Type: Grant
    Filed: January 22, 2021
    Date of Patent: March 26, 2024
    Assignee: EMC IP Holding Company LLC
    Inventors: Min Zhang, Haohan Zhang, Yang Liu, Jianhuang Li, Wai C. Yim
  • Patent number: 11899949
    Abstract: Methods and systems are provided for configuring static memory in a device by analyzing a set of functionalities of a first device based on at least one use case wherein the at least one use case are associated with configuring available static memory in processing at least one functionality of the first device; configuring at least a first profile composed of the first part for memory allocation of the available static memory to a first processor, and a second part for memory allocation of the available static memory to a second processor of the first device; selecting the first profile either automatically or via a graphical user interface (GUI) by identifying a set of performance characteristics related to the functionality, and implementing the memory allocation by the first profile in processing the at least one functionality in the use case by the first device.
    Type: Grant
    Filed: July 17, 2020
    Date of Patent: February 13, 2024
    Assignee: DISH Network Technologies India Private Limited
    Inventors: Rakesh Eluvan Periyaeluvan, Gopikumar Ranganathan, Jayaprakash Narayanan Ramaraj
  • Patent number: 11893239
    Abstract: A high-bandwidth memory (HBM) system includes an HBM device and a logic circuit. The logic circuit includes a first interface coupled to a host device and a second interface coupled to the HBM device. The logic circuit receives a first command from the host device through the first interface and converts the received first command to a first processing-in-memory (PIM) command that is sent to the HBM device through the second interface. The first PIM command has a deterministic latency for completion. The logic circuit further receives a second command from the host device through the first interface and converting the received second command to a second PIM command that is sent to the HBM device through the second interface. The second PIM command has a non-deterministic latency for completion.
    Type: Grant
    Filed: February 10, 2020
    Date of Patent: February 6, 2024
    Inventors: Krishna T. Malladi, Hongzhong Zheng
  • Patent number: 11893259
    Abstract: A storage system comprises a plurality of storage devices, and is configured to establish a production drive group comprising a first subset of the storage devices, using a first firmware-level configuration process, and to establish a stealth drive group comprising a second subset of the storage devices, using a second firmware-level configuration process, the storage devices of the stealth drive group thereby being separated at a firmware level of the storage system from the storage devices of the production drive group. The storage system is further configured to copy data of one or more logical storage volumes from the production drive group to the stealth drive group, and responsive to completion of the copying of the data of the one or more logical storage volumes from the production drive group to the stealth drive group, to initiate a firmware-level reconfiguration process for the storage devices of the stealth drive group.
    Type: Grant
    Filed: January 7, 2021
    Date of Patent: February 6, 2024
    Assignee: EMC IP Holding Company LLC
    Inventors: Boris Giterman, Yaniv Sagron, Arieh Don
  • Patent number: 11874772
    Abstract: Systems and methods for adapting garbage collection (GC) operations in a memory device to a host write activity are described. A host write progress can be represented by an actual host write count relative to a target host write count. The host write activity may be estimated in a unit time such as per day, or accumulated over a specified time period. A memory controller can adjust an amount of memory space to be freed by a GC operation according to the host write progress. The memory controller can also dynamically reallocate a portion of the memory cells between a single level cell (SLC) cache and a multi-level cell (MLC) storage according to the host write progress.
    Type: Grant
    Filed: July 16, 2021
    Date of Patent: January 16, 2024
    Inventors: Deping He, Qing Liang, David Aaron Palmer
  • Patent number: 11860774
    Abstract: An access method of a nonvolatile memory device included in a user device includes receiving a write request to write data into the nonvolatile memory device; detecting an application issuing the write request, a user context, a queue size of a write buffer, an attribute of the write-requested data, or an operation mode of the user device; and deciding one of a plurality of write modes to use for writing the write-requested data into the nonvolatile memory device according to the detected information. The write modes have different program voltages and verify voltage sets.
    Type: Grant
    Filed: July 28, 2021
    Date of Patent: January 2, 2024
    Assignee: SAMSUNG ELECTRONICS CO., LTD.
    Inventors: Sangkwon Moon, Kyung Ho Kim, Seunguk Shin, Sung Won Jung
  • Patent number: 11853576
    Abstract: Examples described herein relate to deletion of data entities in a deduplication system. Examples may maintain entries in a housekeeping queue, each entry including a priority value and a total unshared chunk size of a data entity to be deleted from the deduplication system. Examples may delete the data entities corresponding to the entries including a low priority value from the deduplication system. Examples may determine whether an available storage capacity of the deduplication system is sufficient after deleting the data entities corresponding to the entries including the low priority value. Examples may delete a data entity corresponding to an entry including a high priority value and a largest total unshared chunk size if the available storage capacity is insufficient.
    Type: Grant
    Filed: September 9, 2021
    Date of Patent: December 26, 2023
    Assignee: Hewlett Packard Enterprise Development LP
    Inventors: John Butt, Noel Rodrigues, David Bebawy
  • Patent number: 11853586
    Abstract: Techniques are disclosed herein for improved copy data management functionality in storage systems. For example, a method receives copy usage data for one or more data copies associated with a storage array, wherein the copy usage data is indicative of a usage associated with each of the one or more data copies, and updates the one or more data copies with one or more usage tags based on the received copy usage data. Further, the method may then scan the one or more usage tags associated with each of the one or more data copies, select one or more storage tiers for at least a portion of the one or more data copies based on the scanning of the one or more usage tags, and cause at least a portion of the one or more data copies to be stored in the selected one or more storage tiers.
    Type: Grant
    Filed: October 20, 2020
    Date of Patent: December 26, 2023
    Assignee: EMC IP Holding Company LLC
    Inventor: Sunil Kumar
  • Patent number: 11853606
    Abstract: The present disclosure includes apparatuses and methods for buffer reset commands for write buffers. An example apparatus includes a memory and a controller coupled to the memory. The memory can include an array of resistance variable memory cells configured to store data corresponding to a managed unit across multiple partitions each having a respective write buffer corresponding thereto. The controller can be configured to update the managed unit by providing, to the memory, a write buffer reset command followed by a write command. The memory can be configured to execute the write buffer reset command to place the write buffers in a reset state. The memory can be further configured to execute the write command to modify the content of the write buffers based on data corresponding to the write command and write the modified content of the write buffers to an updated location in the array.
    Type: Grant
    Filed: October 1, 2021
    Date of Patent: December 26, 2023
    Assignee: Micron Technology, Inc.
    Inventors: Marco Sforzin, Paolo Amato
  • Patent number: 11822801
    Abstract: Configuring systems to provide host access may include: configuring a stretched volume; and performing processing that allows the host access to the stretched volume. The processing may include: receiving a first command to create a first host object for access control for the host in the first data storage system; in response to receiving the first command, performing first processing including: creating the first host object that includes an initiator set of the host; and creating a second host object on the second data storage system, wherein the second host object includes the initiator set and specifies access control in the second data storage system for the host; receiving a second command to map the stretched volume to the first host object; and in response to receiving the second command, granting the host access to the stretched volume on the first data storage system and the second data storage system.
    Type: Grant
    Filed: March 10, 2021
    Date of Patent: November 21, 2023
    Assignee: EMC IP Holding Company LLC
    Inventors: Dmitry Tylik, Dave J. Lindner, Girish Sheelvant, Nagasimha G. Haravu