×

Efficient implementation of optimized host-based garbage collection strategies using xcopy and multiple logical stripes

  • US 10,185,658 B2
  • Filed: 07/12/2016
  • Issued: 01/22/2019
  • Est. Priority Date: 02/23/2016
  • Status: Active Grant
First Claim
Patent Images

1. A method of managing a storage system having a plurality of storage devices, the method comprising:

  • at a host system that is distinct from the plurality of storage devices, performing a host-based garbage collection operation, comprising;

    identifying, in accordance with data storage information stored at the host system, one or more logical stripes, whereineach logical stripe of the one or more logical stripes is a distinct contiguous sequence of logical addresses in a logical address space of the host system,each logical stripe includes two or more contiguous sequences of valid logical addresses, which are separated from each other by one or more gaps,a size of each logical stripe is a same predetermined size, andlogical addresses for each logical stripe in the logical address space of the host system are mapped to physical addresses in a physical address space of the plurality of storage devices by mapping information in the plurality of storage devices; and

    in accordance with the identifying, for each logical stripe of the one or more logical stripes, coalescing valid data, including;

    for at least one contiguous sequence of valid logical addresses of the group of two or more contiguous sequences of valid logical addresses, in a logical stripe in the logical address space of the host system, sending instructions from the host system to one or more storage devices of the plurality of storage devices to move valid data corresponding to a first contiguous sequence of valid logical addresses from a first physical location in the physical address space to a second physical location in the physical address space; and

    for each respective logical stripe of the one or more logical stripes, repacking the two or more contiguous sequences of valid logical addresses, in the respective logical stripe in the logical address space of the host system, to a single contiguous set of logical addresses in a contiguous portion of a corresponding target logical stripe, in the logical address space of the host system, the corresponding target logical stripe comprising the respective logical stripe or another logical stripe distinct from the respective logical stripe, wherein the other logical stripe is a second contiguous sequence of logical addresses in the logical address space of the host system distinct from the first contiguous sequence of logical addresses in the logical address space of the host system.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×