| CPC G06F 3/0616 (2013.01) [G06F 3/0631 (2013.01); G06F 3/0632 (2013.01); G06F 3/0647 (2013.01); G06F 3/0653 (2013.01); G06F 3/0679 (2013.01)] | 20 Claims |

|
1. A method comprising:
receiving a request to read data stored in a non-volatile memory;
incrementing a global read counter for the non-volatile memory;
incrementing a local read counter for a zone of the non-volatile memory being accessed by processing of the request;
computing a degree of read hotness for the zone;
computing a read concentration of the zone, wherein the read concentration of the zone is computed as a number of reads to the zone from the local read counter for the zone divided by the degree of read hotness for the zone and then multiplied by the number of reads to the zone from the local read counter for the zone divided by a number of global reads from the global read counter; and
determining the read concentration of the zone meets or exceeds a threshold, and in response, relocating the data stored in the non-volatile memory, wherein the threshold is based on one or more functional parameters, and wherein the data is relocated subject to the request based on the read concentration of the zone meeting or exceeding the threshold such that the zone is classified as a hot read zone.
|