Parallel Erase? New Feature Request


New Member
I noticed that when there is a number of files to erase spread across multiple disks, that Eraser 6.x will erase them sequentially.

Thus, if there are files to be erased on more than one drive, Eraser 6.x won't take advantage of the inherent parallelism/concurrency of multiple disks.

Perhaps an option/configuration parameter that allows one to specify that erasures on multiple drives happen in parallel?

This sure would shorten the time it takes to erase. I have systems that have a lot of drives. When I begin an erase, only one drive is busy at a time...

This ought really to be in the Eraser Programming forum, but as there is a simple answer, I'm leaving it here.

Sequential processing is a deliberate design decision, because it is quicker overall. Parallel processing would be quicker with multiple core processors if the processor were the bottleneck. For Eraser, the hard drive is the bottleneck; sequential processing reduces the amount of head movement and track finding, which is what really lengthens disk access times.

Your point about making tasks on separate disks run parallel is interesting, and I agree with you that in theory it ought to work more quickly. Joel will know better than I whether it would work in practice, and how easy it would be to make Eraser smart and capable enough to do something other than the default processing method.

It would work in practice, and it was originally planned. However, with the limitation of resources and time, this would have to be pushed back. This feature depends on others, notably the requirement to run as a service: it would not make sense if users managed to run 2 copies of Eraser and the parallelism would be defeated with the crazy amount of drive seeks. I believe the ticket dealing with this already exists.

No slowdown there. Well, minimal. Have it as an option at least.

Great product BTW.
The request was logged, I believe, in Trac ticket #15. Implementation requires features that will only be implemented in Eraser 6.2.