Adaptive-feedback-based read-look-ahead management system and method
An adaptive-feedback-based read-look-ahead management system and method are provided. In one embodiment, a method for stream management is presented that is performed in a storage system. The method comprises performing a read look ahead operation for each of a plurality of streams; determining a success rate of the read look ahead operation of each of the plurality of streams; and allocating more of the memory for a stream that has a success rate above a threshold than for a stream that has a success rate below the threshold. Other embodiments are provided.
1. A method for stream management, the method comprising:
performing the following in a storage system:
performing a read look ahead operation for each of a plurality of streams;
for each of the plurality of streams:
determining a hit/miss ratio of the read look ahead operation,
defining a weight based on the hit/miss ratio and a decay element which attributes greater weight to more recent success rates; and
allocating more memory for a stream that has a greater weight than for a stream that has a lesser weight.
2. The method of claim 1 , wherein the hit/miss ratio is determined by comparing a logical block address received from a host with a logical block address predicted by the read look ahead operation.
3. The method of claim 1 further comprising removing at least one of the streams based on the weight.
4. The method of claim 1 , wherein the storage system is embedded in a host.
5. The method of claim 1 , wherein each stream represents a group of data that belongs to identifiable sets of physical locations in memory that are allocated and freed together.
6. The method of claim 1 , wherein performing the read look ahead operation comprises speculatively fetching data from memory to temporal buffers.