|
From: | Antonio Diaz Diaz |
Subject: | Re: [Bug-ddrescue] Why doesn't ddrescue revert to full speed long after a bad read? |
Date: | Wed, 27 Mar 2013 17:05:54 +0100 |
User-agent: | Mozilla/5.0 (X11; U; Linux i586; en-US; rv:1.7.11) Gecko/20050905 |
Paul L Daniels wrote:
Without having yet looked at the code, could it be a 1-off error in the fallback speed code in ddrescue? I guess I should go check the source code and see how ddrescue decides when it increases the speed back.
When ddrescue finds errors it skips ahead. The more the errors, the more it skips (see 'skip_size' in rescuebook.cc). After good data is found again, skip_size is decreased by the amount of data read. But as long as skip_size remains greater than 0, reads are made sector by sector.
I guess that, for slow drives like mine, sector-sized reads are still faster than the drive can deliver data, so I do not notice any slowdown.
Maybe the current algorithm is too conservative for large skip sizes and skip_size should be zeroed after some number of consecutive good sectors have been found.
Another possibility is that you are using a --min-read-rate slower than what sector by sector reads can deliver. In this case, after the first error ddrescue can't regain speed (all reads are considered slow reads).
Regards, Antonio.
[Prev in Thread] | Current Thread | [Next in Thread] |