Patents Examined by Nanci Wong
  • Patent number: 9940057
    Abstract: The method includes identifying, by one or more computer processors, at least one source rank selected for depopulation in a storage pool. The method further includes identifying, by one or more computer processors, one or more source extents for depopulation, wherein the identified one or more source extents belongs to the identified at least one source rank selected for depopulation. The method further includes obtaining, by one or more computer processors, for each identified source extent of the identified one or more source extents to be depopulated, at least one I/O workload. The method further includes sorting, by one or more computer processors, the one or more source extents to be depopulated, based at least in part on the at least one I/O workload for each identified source extent of the identified one or more source extents.
    Type: Grant
    Filed: October 20, 2015
    Date of Patent: April 10, 2018
    Assignee: International Business Machines Corporation
    Inventors: Yao Peng, Qiang Xie, Zhen Xing Yang, Tang Ren Yao, Hui Zhang, Jing Zhou
  • Patent number: 9940021
    Abstract: A method and a system for memory management and a memory storage device thereof are provided. The memory storage device includes a rewritable non-volatile memory module. The method includes receiving a command from a host system; reading use information from the rewritable non-volatile memory module according to the command; writing the use information into a first physical erasing unit of the rewritable non-volatile memory module, and marking the first physical erasing unit with a recognizing flag. The method also includes erasing data in at least part of physical erasing units excepting the first physical erasing unit in the rewritable non-volatile memory module according to the recognizing flag; and establishing a memory management table according to the use information stored in the first physical erasing unit for operating the memory storage device.
    Type: Grant
    Filed: January 18, 2016
    Date of Patent: April 10, 2018
    Assignee: PHISON ELECTRONICS CORP.
    Inventor: Chun-Yang Hu
  • Patent number: 9921760
    Abstract: Technical solutions are described for shifting wearout of an array of storage disks in a storage system. In an aspect, a method includes staggering completion of maximum number of writes for each storage disk in the array. The method also includes copying data from a storage disk in the array to a replacement disk and redirecting a request to access the data from the storage disk to the replacement disk. The method also includes, in response to passage of a predetermined duration of time since copying the data from the storage disk to the replacement disk, copying the data from the replacement disk to the storage disk and directing the request to access the data from the storage disk back to the storage disk.
    Type: Grant
    Filed: October 22, 2015
    Date of Patent: March 20, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jeffery M. Franke, James A. O'Connor
  • Patent number: 9916089
    Abstract: The present disclosure includes methods and apparatuses that include write command overlap detection. A number of embodiments include receiving an incoming write command and comparing a logical address of the incoming write command to logical addresses of a number of write commands in a queue using a tree data structure, wherein a starting logical address and/or an ending logical address of the incoming write command and a starting logical address and/or an ending logical address of each of the number of write commands are associated with nodes in the tree data structure.
    Type: Grant
    Filed: August 6, 2015
    Date of Patent: March 13, 2018
    Assignee: Micron Technology, Inc.
    Inventor: David A. Palmer
  • Patent number: 9898404
    Abstract: An improved garbage collection (“GC”) process configured to recover new blocks from used storage space is disclosed. After initiating the GC process for a flash memory in accordance with at least one of predefined triggering events, a first valid page within a first block marked as an erasable block is identified. Upon determining a first signature representing the content of the first valid page according to a predefined signature generator, the process identifies a second valid page within a second block as a duplicated page of the first valid page in response to the first signature. The process subsequently associates the logical block address (“LBA”) of the first valid page to the second valid page. In an alternative embodiment, page compression and sequential order of page arrangement can also be implemented to further enhance efficiency of garbage collection.
    Type: Grant
    Filed: June 25, 2014
    Date of Patent: February 20, 2018
    Assignee: CNEX LABS
    Inventors: Yiren Ronnie Huang, Aaron Huang
  • Patent number: 9892033
    Abstract: A method for memory management, the method may include calculating, by a memory controller, an estimate of an effect of read operations on a first flash memory entity; and performing, by the memory controller, at least one memory management operation in response to the estimate of the effect of read operations on the first flash memory entity.
    Type: Grant
    Filed: June 24, 2014
    Date of Patent: February 13, 2018
    Assignee: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
    Inventor: Erez Sabbag
  • Patent number: 9886203
    Abstract: Technical solutions are described to forestall data loss caused by wearout of storage disks in an array of storage disks in a storage system by monitoring a rate of writes for a first storage disk in the array and determining a mean time to failure of the first storage disk. A start time is determined based on the mean time to failure, a number of storage disks in the array, and a time to replace a storage disk in the array. At the start time, a notification is issued as an alert to replace the first storage disk to forestall data loss caused by wearout of a second storage disk in conjunction with a wearout of the first storage disk.
    Type: Grant
    Filed: October 22, 2015
    Date of Patent: February 6, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jeffery M. Franke, James A. O'Connor
  • Patent number: 9886395
    Abstract: A tool for determining eviction of store cache entries based on store pressure. The tool determines, by one or more computer processors, a count value for one or more new store cache entry allocations. The tool determines whether a new store cache entry allocation limit is exceeded. Responsive to determining the new store cache entry allocation limit is exceeded, the tool determines an allocation value for one or more existing store cache entries, the allocation value indicating an allocation class for each of the one or more existing store cache entries. The tool determines based, at least in part, on the allocation value for the one or more existing store cache entries, at least one allocation class for eviction. The tool program determines an eviction request setting for evicting the one or more existing store cache entries.
    Type: Grant
    Filed: November 12, 2015
    Date of Patent: February 6, 2018
    Assignee: International Business Machines Corporation
    Inventors: Uwe Brandt, Willm Hinrichs, Walter Lipponer, Martin Recktenwald, Hans-Werner Tast
  • Patent number: 9880742
    Abstract: A valid data merging method, a memory controller and a memory storage apparatus are provided. The method includes: selecting a first physical erasing unit, and loading a first logical address-physical address mapping table according to a physical address-logical address mapping table. The method also includes: updating the first logical address-physical address mapping table according to the physical address-logical address mapping table, and identifying valid data in the first physical erasing unit according to the physical address-logical address mapping table and the first logical address-physical address mapping table. The method further includes: storing the first logical address-physical address mapping table, copying the valid data to a second physical erasing unit, and performing an erasing operation for the first physical erasing unit.
    Type: Grant
    Filed: October 1, 2015
    Date of Patent: January 30, 2018
    Assignee: PHISON ELECTRONICS CORP.
    Inventor: Chih-Kang Yeh
  • Patent number: 9851927
    Abstract: A memory that includes a data partition and an index partition is mounted. The data partition includes an original data and an original index written directly after the original data. The index partition includes the original index at the beginning of the index partition. The first data is written to a data partition of the memory. The first data is written directly after the at least one data on the data partition and the original index is deleted and invalidated. Responsive to a time interval elapsing, a first index is written to the data partition of the memory directly after the first data. The time interval starts at the writing of the first data. Responsive to the time interval elapsing, the first index is written to the index partition of the memory at the closest location, in terms of movement time, to the first index on the data partition.
    Type: Grant
    Filed: September 1, 2015
    Date of Patent: December 26, 2017
    Assignee: International Business Machines Corporation
    Inventors: Tohru Hasegawa, Sosuke Matsui, Shinsuke Mitsuma, Tsuyoshi Miyamura, Noriko Yamamoto
  • Patent number: 9851919
    Abstract: Methods for data placement in a memory-based file system are described, including copying a user data unit from a second storage type device to a first storage type device based on an access request to the file system, the first storage type device being a faster access device than the second storage type device, referencing the user data unit in the first storage type device by a byte addressable memory pointer, and using the byte addressable memory pointer to copy the user data unit from the first storage type device to the second storage type device based on data access pattern.
    Type: Grant
    Filed: December 31, 2014
    Date of Patent: December 26, 2017
    Assignee: NETAPP, INC.
    Inventors: Amit Golander, Boaz Harrosh
  • Patent number: 9837136
    Abstract: A memory module, including a plurality of memory cells and a plurality of signal lines for communicating with a processing device. The memory module is configured such that following reception of a command and upon encountering a first condition while processing the command, the memory module limits a voltage on a first signal line of the plurality of signal lines to be no more than an intermediate voltage greater than voltage levels corresponding to a binary zero state and less than voltage levels corresponding to a binary one state for a period of time for indicating an occurrence of the first condition.
    Type: Grant
    Filed: December 28, 2015
    Date of Patent: December 5, 2017
    Assignee: Lexmark International, Inc.
    Inventor: James Ronald Booth
  • Patent number: 9823862
    Abstract: According to one embodiment, a storage system includes a plurality of memory nodes that are connected to each other in a plurality of different directions. Each memory node stores a count value. Each memory node, when receiving an update command of which destination is not own memory node, transmits the update commando to other memory nodes connected thereto. Each memory node, when receiving an update command of which destination is own memory node, executes the update command, increases the stored count value, and issues a notice indicating the increased count value.
    Type: Grant
    Filed: June 25, 2014
    Date of Patent: November 21, 2017
    Assignee: TOSHIBA MEMORY CORPORATION
    Inventors: Atsuhiro Kinoshita, Junichi Hoshino, Takahiro Kurita
  • Patent number: 9811470
    Abstract: Web objects, such as media files are sent through an adaptation server which includes a transcoder for adapting forwarded objects according to profiles of the receiving destinations, and a cache memory for caching frequently requested objects, including their adapted versions. The probability of additional requests for the same object before the object expires, is assessed by tracking hits. Only objects having experienced hits in excess of a hit threshold are cached, the hit threshold being adaptively adjusted based on the capacity of the cache, and the space required to store cached media files. Expired objects are collected in a list, and may be periodically ejected from the cache, or when the cache is nearly full.
    Type: Grant
    Filed: August 17, 2015
    Date of Patent: November 7, 2017
    Assignee: VANTRIX CORPORATION
    Inventors: Louis Benoit, Sebastien Cote, Robert Buchnajzer
  • Patent number: 9785470
    Abstract: A memory management system is described herein that receives information from applications describing how memory is being used and that allows an application host to exert more control over application requests for using memory. The system provides an application memory management application-programming interface (API) that allows the application to specify more information about memory allocations that is helpful for managing memory later. The system also provides an ability to statically and/or dynamically analyze legacy applications to give applications that are not modified to work with the system some ability to participate in more effective memory management. The system provides application host changes to leverage the information provided by applications and to manage memory more effectively using the information and hooks into the application's use of memory.
    Type: Grant
    Filed: June 20, 2011
    Date of Patent: October 10, 2017
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Jeremiah C. Spradlin, Galen Hunt, Anil F. Thomas, Steven Maillet
  • Patent number: 9785523
    Abstract: Techniques involving replication of storage are described. A representative technique includes apparatuses and methods for receiving replicated virtual storage of a replicated virtual machine, including at least a replicated base virtual disk that substantially corresponds to a primary base virtual disk to be replicated. Copies of differencing disks or other forms of virtual storage updates are received at a recovery site, each of the differencing disks being associated with the primary base virtual disk as descendents thereof. The received copies of the differencing disks are arranged relative to the replicated base virtual disk corresponding to the manner in which the differencing disks were arranged relative to the primary base virtual disk, thereby maintaining the data view of the replicated virtual machine in synchronization with the virtual machine at the primary site.
    Type: Grant
    Filed: June 20, 2011
    Date of Patent: October 10, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Phani Chiruvolu, Gaurav Sinha, Devdeep Singh, Jacob Oshins, Christopher L. Eck
  • Patent number: 9772786
    Abstract: Embodiments relate to address probing for a transaction. An aspect includes determining, before starting execution of a transaction, a plurality of addresses that will be used by the transaction during execution. Another aspect includes probing each address of the plurality of addresses to determine whether any of the plurality of addresses has an address conflict. Yet another aspect includes, based on determining that none of the plurality of addresses has an address conflict, starting execution of the transaction.
    Type: Grant
    Filed: September 4, 2015
    Date of Patent: September 26, 2017
    Assignee: INTERNATIONAL BUSINES MACHINES CORPORATION
    Inventors: Fadi Y. Busaba, Harold W. Cain, III, Dan F. Greiner, Michael K. Gschwind, Maged M. Michael, Eric M. Schwarz, Valentina Salapura, Timothy J. Slegel
  • Patent number: 9772773
    Abstract: Embodiments described herein include a PSL engine that includes various memory elements that permit the engine to grant locks on particular portions of data in a stripe in a RAID storage system. The PSL engine can assign (or lock) different blocks of the stripe for different operations. The PSL engine can grant locks to multiple operations for the same stripe if the operations access mutually exclusive blocks of the stripe. Each time a new operation is requested, the PSL engine determines whether the operation would affect a stripe data block that is currently assigned to another operation. If the new operation corresponds to a block of data in the stripe that includes data locked by another operation, the PSL engine assigns the new operation to a wait list. In one embodiment, the PSL engine maintains a wait list for each of the stripes in the RAID system.
    Type: Grant
    Filed: July 30, 2015
    Date of Patent: September 26, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Robert Galbraith, Adrian C. Gerhard, Daniel F. Moertl
  • Patent number: 9766829
    Abstract: Embodiments relate to address probing for a transaction. An aspect includes determining, before starting execution of a transaction, a plurality of addresses that will be used by the transaction during execution. Another aspect includes probing each address of the plurality of addresses to determine whether any of the plurality of addresses has an address conflict. Yet another aspect includes, based on determining that none of the plurality of addresses has an address conflict, starting execution of the transaction.
    Type: Grant
    Filed: June 26, 2015
    Date of Patent: September 19, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Fadi Y. Busaba, Harold W. Cain, III, Dan F. Greiner, Michael K. Gschwind, Maged M. Michael, Eric M. Schwarz, Valentina Salapura, Timothy J. Slegel
  • Patent number: 9766809
    Abstract: Embodiments described herein include a PSL engine that includes various memory elements that permit the engine to grant locks on particular portions of data in a stripe in a RAID storage system. The PSL engine can assign (or lock) different blocks of the stripe for different operations. The PSL engine can grant locks to multiple operations for the same stripe if the operations access mutually exclusive blocks of the stripe. Each time a new operation is requested, the PSL engine determines whether the operation would affect a stripe data block that is currently assigned to another operation. If the new operation corresponds to a block of data in the stripe that includes data locked by another operation, the PSL engine assigns the new operation to a wait list. In one embodiment, the PSL engine maintains a wait list for each of the stripes in the RAID system.
    Type: Grant
    Filed: August 24, 2015
    Date of Patent: September 19, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Robert Galbraith, Adrian C. Gerhard, Daniel F. Moertl