Patents Examined by Yaima Rigol
  • Patent number: 10635536
    Abstract: A method for execution by a device of a dispersed storage network (DSN) to access a set of encoded data slices. The method begins by performing a first distributed agreement protocol (DAP) function using a slice identifier and a first set of coefficients to identify a set of storage units. The method continues by performing a second DAP function using the slice identifier and a second set of coefficients to identify pillar numbers for the set of storage units. The method continues by sending a set of data access requests to the set of storage units in accordance with the pillar numbers, wherein a data access request of the set of data access requests includes a slice name for a corresponding one of the set of encoded data slices and wherein the slice name includes one of the pillar numbers.
    Type: Grant
    Filed: March 23, 2017
    Date of Patent: April 28, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Andrew D. Baptist, Wesley B. Leggette, Manish Motwani, Jason K. Resch, Ethan S. Wozniak
  • Patent number: 10635314
    Abstract: A computer program product for implementing write procedures using an estimated best setting in a first run, the computer program product comprising a computer readable storage medium having program instructions executable by a tape drive to cause the tape drive to perform a method comprising: receiving, at the tape drive, a request for a write operation to be performed in the tape drive; determining, by the tape drive, a capacity margin ratio of the tape drive; determining an optimum a write procedure based at least in part on the capacity margin ratio; and invoking the optimum write procedure in response to determining the optimum write procedure. The optimum write procedure is selected from the group consisting of: a backhitch write procedure, a same wrap backhitchless flush (SWBF) write procedure, and a recursively accumulating backhitchless flush (RABF) write procedure.
    Type: Grant
    Filed: August 18, 2017
    Date of Patent: April 28, 2020
    Assignee: International Business Machines Corporation
    Inventors: James M. Karp, Takashi Katagiri, Yuhko Mori, Yutaka Oishi
  • Patent number: 10629255
    Abstract: A processing system and method for a data strobe signal (DQS). A counter circuit counts falling edges of the DQS within a valid region of the DQS and thereby generates a plurality of counting signals. An OR logic circuit receives the counting signals and a DQS window start signal and thereby generates a DQS window signal. A filter circuit is provided to gate the DQS according to the DQS window signal. The DQS window start signal is kept asserted until at least one of the counting signals changes due to the counting.
    Type: Grant
    Filed: March 23, 2017
    Date of Patent: April 21, 2020
    Assignee: VIA ALLIANCE SEMICONDUCTOR CO., LTD.
    Inventors: Chen Chen, Hui Wu, Fan Jiang, Qiang Si
  • Patent number: 10629269
    Abstract: A read table management method for a solid state storage device includes the following steps. If the lowest computation value in a hot group is lower than the highest computation value in a cold group when a read table adjusting process is enabled, a first read voltage set corresponding to the lowest computation value in the hot group and a second read voltage set corresponding to the highest computation value in the cold group are swapped with each other. Consequently, the second read voltage set becomes to belong to the hot group, and the first read voltage set becomes to belong to the cold group.
    Type: Grant
    Filed: September 19, 2018
    Date of Patent: April 21, 2020
    Assignee: SOLID STATE STORAGE TECHNOLOGY CORPORATION
    Inventors: Shih-Jia Zeng, Chun-Wei Kuo, Kuan-Chun Chen, Jen-Chien Fu
  • Patent number: 10628279
    Abstract: To manage memory in a multi-processing system, a memory budget is assigned to each of a number of agents within the multi-processing system. A portion of memory is allocated to each the agents within the memory budget. Metrics are collected for each agent during processing of data by the agents; the metrics include an amount of data processed and an amount of memory used for each agent. Memory efficiency is determined for each agent based on the collected metrics and another memory budget is determined based on the memory efficiency. The portion of the memory is reallocated to the agents within the other memory budget in response to data stored in the memory relative to the assigned memory budget meeting a criterion.
    Type: Grant
    Filed: February 28, 2017
    Date of Patent: April 21, 2020
    Assignee: International Business Machines Corporation
    Inventors: Gopi K. Attaluri, Ronald J. Barber, Vijayshankar Raman, Liping Zhang
  • Patent number: 10620843
    Abstract: Methods, non-transitory computer readable media, and computing devices that manages distributed snapshot for low latency storage includes accessing one or more snapshots from one or more solid state devices (SSD), wherein the obtained one or more snapshots are stored in a snapshot allocated capacity of the one or more SSD. A data transfer operation is initiated from a primary storage to a secondary storage using the accessed one or more snapshots. It is determined if the initiated data transfer operation is completed and when it is determined to be completed, the obtained one or more snapshots stored in the snapshot allocated capacity of the one or more SSD are deleted.
    Type: Grant
    Filed: July 26, 2017
    Date of Patent: April 14, 2020
    Assignee: NetApp, Inc.
    Inventors: Rodney A. DeKoning, Tim Emami
  • Patent number: 10621102
    Abstract: A computer-implemented method is provided for managing digital datasets stored on a multi-tiered storage system that includes several tiers of storage, the datasets likely to be accessed by one or more applications interacting with the storage system. The method includes monitoring an access history of datasets accessed by the one or more applications; and while monitoring the access history: computing probabilities of access, by the one or more applications, of the datasets stored on the storage system according to metadata associated to given datasets as identified in the monitored access history; and based on the computed probabilities of access, selecting one or more of the datasets to be moved across the tiers. Related storage systems and computer program products are also provided.
    Type: Grant
    Filed: March 23, 2017
    Date of Patent: April 14, 2020
    Assignee: International Business Machines Corporation
    Inventors: Giovanni Cherubini, Yusik Kim, Mark A. Lantz, Vinodh Venkatesan
  • Patent number: 10613771
    Abstract: Provided are a computer program product, system, and method for processing a write of records to maintain atomicity for writing a defined group of records to multiple tracks. A write is received comprising defined groups of records to write to a plurality of tracks in the primary storage system. Sub-writes are generated to write the records in the defined groups in the write. At least one of the sub-writes includes records to write for at least one of the defined groups that spans multiple tracks in response to determining that at least one of the defined groups includes records that will be written to multiple tracks. The sub-writes are transmitted to the primary storage system to mirror to the secondary storage system to cause the secondary storage system to return complete in response to completing writing to all the tracks written to by the sub-write.
    Type: Grant
    Filed: February 27, 2017
    Date of Patent: April 7, 2020
    Assignee: International Business Machines Corporation
    Inventors: Ronald E. Bretschneider, John R. Paveza, Beth A. Peterson, Max D. Smith, Gail A. Spear, Harry M. Yudenfriend
  • Patent number: 10606719
    Abstract: Provided are a computer program product, system, and method for mirroring writes of records to maintain atomicity for writing a defined group of records to multiple tracks. Sub-writes are received from a host system to write records in defined groups in a write, wherein at least one of the sub-writes includes records to write for at least one of the defined groups that spans multiple tracks. For each of the sub-writes including records for at least one of the defined groups that spans multiple tracks, the tracks in the sub-write with to the secondary storage system to cause the secondary storage system to apply the tracks upon receiving all the tracks for the sub-write. Complete is returned for the sub-write to the host system upon receiving confirmation from the secondary storage system that all the tracks for the sub-write have been applied to the secondary storage system.
    Type: Grant
    Filed: February 27, 2017
    Date of Patent: March 31, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Ronald E. Bretschneider, John R. Paveza, Beth A. Peterson, Max D. Smith, Gail A. Spear, Harry M. Yudenfriend
  • Patent number: 10599585
    Abstract: A method and apparatus for caching data accessed in a storage device, which include a selection of a list from a plurality of lists based on a cache block accessed from a cache memory, the cache memory being partitioned into a plurality of cache portions, each of the plurality of lists being assigned to a respective cache portion of the plurality of cache portions, each of the plurality of lists indicating an order in which cache blocks of the respective cache portion were accessed. Furthermore, a determination as to whether the accessed cache block meets a list update criteria, and an update the order in which cache blocks, assigned to the selected list, were accessed from the cache memory based on determining the accessed cache block meets the list update criteria may be included.
    Type: Grant
    Filed: March 23, 2017
    Date of Patent: March 24, 2020
    Assignee: INTEL CORPORATION
    Inventors: Michal Wysoczanski, Mariusz Barczak
  • Patent number: 10558590
    Abstract: A data processing system for processing data using a memory having a plurality of memory regions, a given memory region within said plurality of memory regions having an associated owning process having exclusive rights to control access to said given memory region, said system comprising: a security controller to: receive a request to initialise a guest execution environment; claim one or more regions of memory to be owned by said security controller; store executable program code of said guest execution environment within said one or more regions of memory; and transfer ownership of said one or more regions to said guest execution environment.
    Type: Grant
    Filed: April 26, 2016
    Date of Patent: February 11, 2020
    Assignee: ARM Limited
    Inventors: Jason Parker, Richard Roy Grisenthwaite, Andrew Christopher Rose, Matthew Lucien Evans
  • Patent number: 10552322
    Abstract: Embodiments are directed to techniques for allowing a data storage system to be able to flush data to underlying storage when the bandwidth is high without excessively impacting the maximum latency. This may be accomplished by utilizing asynchronous flushing and by throttling incoming writes by preventing too many asynchronous flushes from happening when the amount of available cache space is too small. In addition, an improved system employing Copy on First Write (CoFW) may initiate write throttling only once the amount of available write cache drops below a dynamically-calculated threshold that accounts for an amount of space actually needed to store CoFW buffers. In addition, only a portion of the write caching process is placed under the protection of a mutex or a spinlock, allowing a significant portion of the write caching for any given write operation to be performed without needing the mutex or spinlock, allowing some increased parallelization.
    Type: Grant
    Filed: November 16, 2017
    Date of Patent: February 4, 2020
    Assignee: EMC IP Holding Company LLC
    Inventors: Guoyu Hu, Shuo Lv, Qiaosheng Zhou, Congyue Gu
  • Patent number: 10521143
    Abstract: Techniques are provided for providing a storage abstraction layer for a composite aggregate architecture. A storage abstraction layer is utilized as an indirection layer between a file system and a storage environment. The storage abstraction layer obtains characteristic of a plurality of storage providers that provide access to heterogeneous types of storage of the storage environment (e.g., solid state storage, high availability storage, object storage, hard disk drive storage, etc.). The storage abstraction layer generates storage bins to manage storage of each storage provider. The storage abstraction layer generates a storage aggregate from the heterogeneous types of storage as a single storage container. The storage aggregate is exposed to the file system as the single storage container that abstracts away from the file system the management and physical storage details of data of the storage aggregate.
    Type: Grant
    Filed: March 23, 2017
    Date of Patent: December 31, 2019
    Assignee: NetApp Inc.
    Inventors: Ananthan Subramanian, Sriram Venketaraman, Ravikanth Dronamraju, Mohit Gupta
  • Patent number: 10514721
    Abstract: A computational device receives an input/output (I/O) operation directed to a data set. In response to determining that there is a time lock on the data set, a determination is made as to whether a clock of the computational device is providing a correct time. In response to determining that the clock of the computational device is not providing the correct time, the I/O operation is restricted from accessing the data set. In response to determining that the clock of the computational device is providing the correct time, a determination is made from one or more time entries of the time lock whether to provide the I/O operation with access to the data set.
    Type: Grant
    Filed: May 8, 2017
    Date of Patent: December 24, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Matthew G. Borlick, Lokesh M. Gupta
  • Patent number: 10514859
    Abstract: A computational device generates a point in time copy of one or more regions of a time locked data set, in response to receiving one or more I/O operations directed to the time locked data set. The one or more I/O operations are performed on the point in time copy of the one or more regions of the time locked data set, in response to generating the point in time copy of the one or more regions of the time locked data set.
    Type: Grant
    Filed: May 8, 2017
    Date of Patent: December 24, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Matthew G. Borlick, Lokesh M. Gupta
  • Patent number: 10515671
    Abstract: Logic such as a memory controller writes primary data from an incoming write request as well as corresponding replicated primary data (which is a copy of the primary data) to one or more different memory banks of random access memory in response to determining a memory access contention condition for the address (including a range of addresses) corresponding to the incoming write request. When the memory bank containing the primary data is busy servicing a write request, such as to another row of memory in the bank, a read request for the primary data is serviced by reading the replicated primary data from the different memory bank of the random access memory to service the incoming read request.
    Type: Grant
    Filed: September 22, 2016
    Date of Patent: December 24, 2019
    Assignee: Advanced Micro Devices, Inc.
    Inventor: David A. Roberts
  • Patent number: 10489350
    Abstract: Techniques for handling data compression in which metadata that indicates which portions of data are compressed are which portions of data are not compressed are disclosed. Segments of a buffer referred to as block groups store compressed blocks of data along with uncompressed blocks of data and hash blocks. If a block group includes a block that is a hash of another block in the block group, then the other block is considered to be compressed. If the block group does not include a block that is a hash of another block in the block group, then the blocks in the block group are uncompressed. The hash function to generate the hash is selected to prevent “collisions,” which occur when the data being stored in the buffer is such that it is possible for a hash block and an uncompressed block to be the same.
    Type: Grant
    Filed: February 24, 2017
    Date of Patent: November 26, 2019
    Assignee: Advanced Micro Devices, Inc.
    Inventor: Greg Sadowski
  • Patent number: 10489296
    Abstract: Embodiments here relate to managing a cache by exploiting a cache line hierarchy is provided. Managing the cache includes reading cache references of a first task from a cache reference save area of a first task data structure in response to a context switch. Further, managing the cache includes prefetching and restoring cache lines of the first task to the cache based on the cache references. Note that the cache lines can be predetermined from a plurality of cache lines associated with the first task during an extraction operation with respect to the first task and the cache line hierarchy.
    Type: Grant
    Filed: September 22, 2016
    Date of Patent: November 26, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Wolfgang Gellerich, Peter M. Held, Gerrit Koch, Christoph Raisch, Martin Schwidefsky
  • Patent number: 10482033
    Abstract: A memory controller includes a dirty group detector configured to, in response to receiving a request for writing data to a memory, modify addresses of a cache group related to a physical address of the memory, increase counters corresponding to the modified addresses of the cache group, and detect whether the cache group is in a dirty state based on the counters; and a dirty list manager configured to manage the cache group in the dirty state and a dirty list including dirty bits according to a result of the detecting; wherein the dirty bits indicate whether a cache set included in the cache group is in the dirty state.
    Type: Grant
    Filed: March 23, 2017
    Date of Patent: November 19, 2019
    Assignees: SAMSUNG ELECTRONICS CO., LTD, SEOUL NATIONAL UNIVERSITY R&DB FOUNDATION
    Inventors: Sangheon Lee, Dongwoo Lee, Kiyoung Choi, Soojung Ryu
  • Patent number: 10474373
    Abstract: Systems, methods, and software described herein provision application volumes for a plurality of virtual machines. In one example, a method of provisioning volumes for attachment to virtual machines includes provisioning an application in a virtual volume of a first virtual drive format, and identifying one or more alternative virtual drive formats for the application. The method further includes duplicating the application in the virtual volume to one or more additional virtual volumes corresponding to the one or more alternative virtual drive formats. The method also includes storing the virtual volume and the one or more additional virtual volumes in separate storage repositories, wherein each of the storage repositories is associated with one or more virtual machines and a particular virtual drive format.
    Type: Grant
    Filed: April 6, 2015
    Date of Patent: November 12, 2019
    Assignee: VMware, Inc.
    Inventors: Jairam Choudhary, Matthew Conover