Disk Defragment?


No

Flash memory does not have a 'Head' to move, so there is no advantage in defragging it. It just uses up extra read/write cycles, which although there are LOADS of them, will eventually run out.


Defragging a HDD puts all the data in contiguous blocks s that the head doesnt have to move around as much when reading, therefore speeding up the read.
 
No Offense, but what do you not understand in the phrase 'Solid State Media'? As Axeman said there is no head to move thats why it is 'Solid State' not A hard drive. It has no moving parts.
 
Personally I think that defragging a card will increase it's performance provided it is fragmented enough in the first place to make it wortwhile.

I would however defrag a card by copying the data off the card to hard drive and then back again as it will dramatically reduce the writes required.

Even solid state devices have seek times Sam. There are plenty of Palm and Pocket PC defrag utilities out there. Are you saying they are pointless?
 
Vimacs posted on Apr 8 2006 at 11:31 AM said:
Even solid state devices have seek times Sam.
no, why would they? you can read from any adress at the same speed, with the same acces time.

So why do some sites publish the seek times in the card info?

I'll find an example for you if you want.
 
Last edited by a moderator:
sam fisher posted on Apr 8 2006 at 11:54 AM said:

This guy has done extensive testing into optimising cards for Pocket PCs.

Full details.

Part way through his thread you will find the following :

formatting the card and copying the files back to the card, say, once in a month (depending on how many small files you move in there/delete) can be advantageous. For example, I've measured some 5-10% performance degradation when copying files to a fragmented card (the SanDisk SD, which is a pretty average card, performance-wise). If you don't want to manually copy files, you may also want to use a disk defragmenter tool. All the introdued PPC-based card handler apps (except for SKTools) are capable of doing this. (Don't, however, try to fix file system errors with them!). Please also note that even top-notch cards like the Ridata one require this from time to time. For example, NoteM will also have problems (skips/pauses) with these cards if they become fragmented, especially during long (over one hour) recordings.



I rest my case :p
 
Last edited by a moderator:
I'm an idiot on flash memory, but don't flash memory read 1 byte at a time, but erase in blocks? Thus, I'd think that flash memory would actually go faster with defragmention, as when writing in a already written in block, it wouldn't have to delete the block, and then rewrite it. See figure below.

8 byte block (I really don't know the size of the blocks, just for example purposes)

11111111 <---new erased block

01111111 <---written in block (say this block was a fragmented part of another file)

To add information to that block... say three "0" bytes, it would have to first clean the entire block, and then rewrite it as...

00001111 <---new block after rewriting.

But with fragmentation, shouldn't it contain all of the relevant data of one file within one section of a block, and other files in their own sections, thus stopping random fragments that would cause for erasing and rewriting of blocks?
 
BaDToaD posted on Apr 8 2006 at 01:28 PM said:
I would however defrag a card by copying the data off the card to hard drive and then back again as it will dramatically reduce the writes required.

Garrr.

I think you mean to say "reduce the reads required". And you do that by adding some more writes, thereby reducing the life expectancy of your card: remember it has a maximum number of write cycles.

I hardly think it would be worth it, added trouble and risk vs. possible increased performance which you may not even notice.
 
Last edited by a moderator:
You have a point there, the defrag might improve some performance, but probably not by any noticible amount.

Note to BadToad.

That won't do anything, as all it ill do is make all the blocks interconnected as it will all be written at once, it will use contiguous bytes, which probably will overlap blocks.
 
RiX0R posted on Apr 9 2006 at 02:06 AM said:
BaDToaD posted on Apr 8 2006 at 01:28 PM said:
I would however defrag a card by copying the data off the card to hard drive and then back again as it will dramatically reduce the writes required.

Garrr.

I think you mean to say "reduce the reads required". And you do that by adding some more writes, thereby reducing the life expectancy of your card: remember it has a maximum number of write cycles.

I hardly think it would be worth it, added trouble and risk vs. possible increased performance which you may not even notice.

I meant what I said but was maybe not clear enough. it should have said:

I would however defrag a card by copying the data off the card to hard drive and then back again as it will dramatically reduce the writes required compared to defragging the files in situ.
 
Last edited by a moderator:
Back
Top