Patents Examined by Mano Padmanabhan
  • Patent number: 10740024
    Abstract: In one aspect, runtime feature overhead minimization is provided for a storage system. An aspect includes providing a system table having features available to the system and a field indicating whether a feature is enabled. An aspect also includes providing a configuration table for data modules in the system that includes features available to storage units managed by the data modules and a field that indicates whether a feature is enabled for a storage unit. Upon receiving a request that includes a selected storage unit, the data modules access the system table. For each feature in the system table, the data modules determine whether the feature is set to enabled via the corresponding flag field. Upon determining the feature is set to disabled via the corresponding flag field in the system table, performing an operation identified in the request without accessing the configuration table.
    Type: Grant
    Filed: April 4, 2019
    Date of Patent: August 11, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: Xiangping Chen, Anton Kucherov
  • Patent number: 10733096
    Abstract: A method for implementing a shared memory buffer includes at an apparatus comprising a processor and a physical memory, running a host environment with a host virtual memory. The method further includes running a guest environment with a guest virtual memory, performing, by the host environment, an allocation of a frame buffer in the physical memory, and mapping the allocated frame buffer into the host virtual memory. Additionally, the method includes passing a handle of the allocated frame buffer to the guest environment and performing a mapping of the allocated frame buffer into the guest virtual memory, the mapping based on the handle of the allocated frame buffer.
    Type: Grant
    Filed: August 21, 2018
    Date of Patent: August 4, 2020
    Assignee: Samsung Electronics Co., Ltd.
    Inventors: Ivan Getta, Sudhi Herle, Ahmed M. Azab, Rohan Bhutkar, Guruprasad Ganesh, Wenbo Shen
  • Patent number: 10732906
    Abstract: Apparatus and method for managing data in a multi-device data storage system. In some embodiments, a plurality of data storage devices are provided, each data storage device having a local driver circuit adapted to transfer data with a local memory module. A main driver circuit external to the plurality of data storage devices is configured to stream frequency modulated write data via parallel data transfer paths to the respective local driver circuits for concurrent transfer of the frequency modulated write data to the respective local memory modules.
    Type: Grant
    Filed: February 26, 2015
    Date of Patent: August 4, 2020
    Assignee: Seagate Technology LLC
    Inventors: Philip Jurey, Dale T. Riley, John W. Shaw
  • Patent number: 10733102
    Abstract: A processor core executes a first instruction indicating a first coherence state update policy that biases the cache memory to retain write authority, thereafter executes a second instruction indicating a second coherence state update policy that biases the cache memory to transfer write authority, and executes a store instruction following the first instruction in program order to generate a store request. A cache memory stores the cache line in association with a coherence state field set to a first modified coherence state. In response to the store request, the cache memory updates data of the cache line. If the store instruction is executed prior to the second instruction, the cache memory refrains from updating the coherence state field, but if the store instruction is executed after the second instruction, the cache memory updates the coherence state field from the first modified coherence state to a second modified coherence state.
    Type: Grant
    Filed: December 19, 2018
    Date of Patent: August 4, 2020
    Assignee: International Business Machines Corporation
    Inventors: Derek E. Williams, Guy L. Guthrie
  • Patent number: 10733104
    Abstract: Techniques are disclosed herein for providing accelerated recovery techniques of a memory device. Such techniques can allow for recovery of the memory device, such as, but not limited to, a flash memory device, following an unexpected reset event.
    Type: Grant
    Filed: August 3, 2018
    Date of Patent: August 4, 2020
    Assignee: Micron Technology, Inc.
    Inventor: David Aaron Palmer
  • Patent number: 10725699
    Abstract: An apparatus is provided that includes a processor and an instruction memory including a first memory, a second memory, a third memory and an instruction selector circuit. The first memory is configured to receive a first instruction address from the processor, the second memory is configured to receive the first instruction address from the processor and generate a control signal based on the received first instruction address, and the third memory is configured to receive the first instruction address from the processor. The instruction selector circuit is configured to selectively send an instruction from one of the first memory and the third memory based on the control signal to the processor, and to selectively enable and disable the third memory to reduce power consumption of the instruction memory.
    Type: Grant
    Filed: June 22, 2018
    Date of Patent: July 28, 2020
    Assignee: SanDisk Technologies LLC
    Inventors: Chi-Lin Hsu, Tai-Yuan Tseng, Yan Li, Hiroyuki Mizukoshi
  • Patent number: 10719252
    Abstract: A method is used in managing deduplication characteristics in a storage system. Deduplication entries stored in a deduplication cache are categorized into a set of deduplication groups based on a data deduplication probability associated with the deduplication entries. A machine learning system is used to dynamically adjust deduplication characteristics associated with the set of deduplication groups based on an I/O workload associated with the storage system.
    Type: Grant
    Filed: August 3, 2018
    Date of Patent: July 21, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: Yubing Wang, Philippe Armangau, Ajay Karri
  • Patent number: 10720200
    Abstract: An exemplary data refresh method disclosed herein reading data into volatile memory from a first storage region using a read element controlled by a first actuator assembly and writing the data from the volatile memory to a second storage region using a write element controlled by a second actuator assembly, where the first actuator assembly and the second actuator assembly are configured to receive data from control circuitry via independent read/write communication channels.
    Type: Grant
    Filed: April 25, 2018
    Date of Patent: July 21, 2020
    Assignee: SEAGATE TECHNOLOGY LLC
    Inventors: Devon Dallmann, Andrew Michael Kowles, Bruce Douglas Buch, Mark A. Gaertner
  • Patent number: 10719403
    Abstract: Recovery support techniques for storage virtualization environments are described. In one embodiment, for example, a method may be performed that comprises defining, by processing circuitry, a storage container comprising one or more logical storage volumes of a logical storage array of a storage system, associating the storage container with a virtual volume (vvol) datastore, identifying metadata for a vvol of the vvol datastore, and writing the metadata for the vvol to the storage system. Other embodiments are described and claimed.
    Type: Grant
    Filed: January 31, 2016
    Date of Patent: July 21, 2020
    Assignee: NetApp Inc.
    Inventors: Deepak Thomas, Dan Sarisky, Nagender Somavarapu, Santosh Lolayekar
  • Patent number: 10712969
    Abstract: An aspect of the present disclosure provides for managing content items in a storage system. In an embodiment, a trash command is received from a user, where the trash command specifies an expression of a set of attribute conditions connected by logical operators. A set of content items having attributes matching said expression are selected, where the set of content items are stored in corresponding logical locations on the storage system prior to receiving the trash command. The selected set of content items are moved from respective logical locations on the storage system to a set of trash folders, wherein selecting and moving the set of content items are performed in response to receiving the trash command specifying the expression.
    Type: Grant
    Filed: December 6, 2018
    Date of Patent: July 14, 2020
    Assignee: Oracle International Corporation
    Inventors: Shyam Babu Prasad, Bhageerath Arasachetty, Praveen Kumar Jayaram
  • Patent number: 10705956
    Abstract: A data storage system stores information indicating a determined sequence for performing operations on a data store. A lock is acquired on a portion of the data store. It is determined that performing the operations comprises performing at least one additional operation on the data store. Uncommitted changes implied by the operations are stored in a transaction buffer according to the determined sequence. Changes implied by the additional operation are determined based on a reentrant call to a data store interface. The logged sequence of changes is applied to the data store and the lock is released.
    Type: Grant
    Filed: May 2, 2018
    Date of Patent: July 7, 2020
    Assignee: Amazon Technologies, Inc.
    Inventors: Kristina Kraemer Brenneman, Norbert Paul Kusters, Jianhua Fan, Danny Wei
  • Patent number: 10698822
    Abstract: A system for writing to a cache line, the system including: at least one processor; and at least one memory having stored thereon instructions that, when executed by the at least one processor, controls the at least one processor to: pre-emptively invalidate a cache line at a reader device; receive, from the reader device, a read request for the invalidated cache line; delay a response to the read request; and after the delay, output for transmission a response to the read request to the reader device.
    Type: Grant
    Filed: November 8, 2018
    Date of Patent: June 30, 2020
    Inventor: Johnny Yau
  • Patent number: 10698839
    Abstract: Apparatuses, systems, methods, and computer program products are disclosed for seed scrambling. An apparatus includes a memory element. An apparatus includes a scrambler component. A scrambler component includes an input circuit that receives a random seed. A scrambler component includes a matrix circuit that generates a new seed based on a matrix operation performed on a seed. A scrambler component includes a rotation circuit that forms a shifted seed. A shifted seed is formed by shifting a new seed based on a seed.
    Type: Grant
    Filed: April 25, 2018
    Date of Patent: June 30, 2020
    Assignee: WESTERN DIGITAL TECHNOLOGIES, INC.
    Inventors: Ishai Ilani, Eran Sharon
  • Patent number: 10691602
    Abstract: To reduce overhead for cache coherence for shared cache in multi-processor systems, adaptive granularity allows tracking shared data at a coarse granularity and unshared data at fine granularity. Processes for adaptive granularity select how large of an entry is required to track the coherence of a block based on its state. Shared blocks are tracked in coarse-grained region entries that include a sharer tracking bit vector and a bit vector that indicates which blocks are likely to be present in the system, but do not identify the owner of the block. Modified/unshared data is tracked in fine-grained entries that permit ownership tracking and exact location and invalidation of cache. Large caches where the majority of blocks are shared and not modified create less overhead by being tracked in the less costly coarse-grained region entries.
    Type: Grant
    Filed: June 29, 2018
    Date of Patent: June 23, 2020
    Assignee: Intel Corporation
    Inventors: Gino Chacon, Alaa R. Alameldeen
  • Patent number: 10678693
    Abstract: A logic-executing ring buffer (LERB) is a ring buffer with integrated logic. A LERB includes a series of logical ring stages and corresponding ring entries mapped to each other using an indirection table. A LERB can include control logic and stage functions that execute in association with each ring stage. The LERB advances by updating the indirection table (e.g., to map an associated ring entry with a subsequent ring stage, optionally based on pinning logic) and/or by passing data from one ring stage to the next. As such, ring stages can store transient data that gets passed between ring stages, ring entries store persistent data that does not move, and mappings are updated by LERB control logic and/or stage functions. As such, a LERB is a flexible data structure that provides expanded functionality and improved memory management for many applications.
    Type: Grant
    Filed: November 8, 2018
    Date of Patent: June 9, 2020
    Assignee: INSIGHTFULVR, INC
    Inventors: Layla Mah, Jean-Sebastien Bourdon
  • Patent number: 10671419
    Abstract: A system and method of emulated input-output memory management units includes a management software associating a first device with a first input-output memory management unit having a first security designation, and associating a second device with a second input-output memory management unit having a second security designation different from the first security designation. A hypervisor constructs a table that describes associations between the plurality of devices and the plurality of input-output memory management units. The hypervisor provides the table to a guest virtual machine having a plurality of guest addresses including a first guest address and a second guest address. The first device accesses the first guest address through the first input-output memory management unit and the second device accesses the second guest address through the second input-output memory management unit.
    Type: Grant
    Filed: February 29, 2016
    Date of Patent: June 2, 2020
    Assignee: Red Hat Israel, Ltd.
    Inventors: Marcel Apfelbaum, Gal Hammer
  • Patent number: 10656874
    Abstract: The present application relates to a storage device operation control method, a storage device, and a management node. The method includes: receiving at least one request sent by at least one management node; and when one of the at least one request is a permission application request, determining, according to a current permission status, whether to assign operation permission to a management node that sends the permission application request; or when one of the at least one request is an operation request, determining, according to a current permission status, whether a management node that sends the operation request has operation permission, and performing an operation according to the operation request when the management node that sends the operation request has the operation permission. This avoids a conflict caused by simultaneously performing an operation on a storage device by multiple management nodes, and prevents successive serial operations from being interrupted.
    Type: Grant
    Filed: April 27, 2018
    Date of Patent: May 19, 2020
    Assignee: Huawei Technologies Co., Ltd.
    Inventors: Xin Qiu, Dengben Wu, Ligang Chen
  • Patent number: 10649896
    Abstract: A data storage device and a method for operating the data storage device are disclosed. The data storage device may include an interface receiving a command and data from a host, a cache temporarily storing the received data, a memory non-temporarily storing the data stored in the cache, and a controller controlling the memory and the cache based on the command received from the host. The command may include charge rate of a battery supplying a power to the data storage device. The controller may determine whether or not the data storage device is an idle state, and determine an active operation mode of the data storage device based on the charge rate of the battery, when the data storage device is the idle state.
    Type: Grant
    Filed: November 3, 2017
    Date of Patent: May 12, 2020
    Assignee: SAMSUNG ELECTRONICS CO., LTD.
    Inventors: Dong Woo Kim, Byeong Hui Kim, Kyung Ho Kim, Seok Hwan Kim
  • Patent number: 10642496
    Abstract: A storage device may utilize a host memory buffer for re-ordering commands in a submission queue. Out of order commands in a submission queue that uses host virtual buffers that are not the same size may be difficult to search. Accordingly, commands in a submission queue may be correctly ordered in a host memory buffer before being put into the host virtual buffers. When the commands are in order, the search operation for specific data is improved.
    Type: Grant
    Filed: April 1, 2016
    Date of Patent: May 5, 2020
    Assignee: SanDisk Technologies Inc.
    Inventors: Shay Benisty, Tal Sharifie
  • Patent number: 10635590
    Abstract: Apparatus, method, and system for implementing a software-transparent hardware predictor for core-to-core data communication optimization are described herein. An embodiment of the apparatus includes a plurality of hardware processor cores each including a private cache; a shared cache that is communicatively coupled to and shared by the plurality of hardware processor cores; and a predictor circuit. The predictor circuit is to track activities relating to a plurality of monitored cache lines in the private cache of a producer hardware processor core (producer core) and to enable a cache line push operation upon determining a target hardware processor core (target core) based on the tracked activities. An execution of the cache line push operation is to cause a plurality of unmonitored cache lines in the private cache of the producer core to be moved to the private cache of the target core.
    Type: Grant
    Filed: September 29, 2017
    Date of Patent: April 28, 2020
    Assignee: Intel Corporation
    Inventors: Ren Wang, Joseph Nuzman, Samantika S. Sury, Andrew J. Herdrich, Namakkal N. Venkatesan, Anil Vasudevan, Tsung-Yuan C. Tai, Niall D. McDonnell