Defragging a GPS internal flash storage?

  • Thread starter Thread starter Yousuf Khan
  • Start date Start date
Y

Yousuf Khan

Hi, a couple of people I know just bought the same model of GPS receiver
(big one-day sale at a local retailer). Now, they have noticed that it
has horrible performance, it takes forever to find any Points of
Interest (POI's), among many other things to do with searching on it. So
I did some research on it for them, and found that many other people are
experiencing the exact same problems. Now in the middle of that
research, a solution turned up which stated that you simply need to
defrag the internal storage of that GPS unit, and it fixes all of its
performance issues. There have been several reports after that that
confirmed it. I'm about to try this solution, and I have no doubts that
it'll work. What I'm curious about is why it should work?

I mean knowing what I know about SSD's, they say defragging shouldn't be
necessary, and indeed defragging would be bad for SSD's. Since internal
flash storage is just a lower-performance version of SSD's, I'd have
thought it would be the same thing. However, I'm thinking one
fundamental difference between a flash drive and SSD's is that most
flash drives are formatted with old-fashioned FAT32, while SSD's are
formatted with modern file systems like NTFS, or Linux's Ext4FS, etc.
Perhaps defragging still makes a difference on FAT32 on flash?

Yousuf Khan
 
Hi, a couple of people I know just bought the same model of GPS receiver
(big one-day sale at a local retailer). Now, they have noticed that it
has horrible performance, it takes forever to find any Points of
Interest (POI's), among many other things to do with searching on it. So
I did some research on it for them, and found that many other people are
experiencing the exact same problems. Now in the middle of that
research, a solution turned up which stated that you simply need to
defrag the internal storage of that GPS unit, and it fixes all of its
performance issues. There have been several reports after that that
confirmed it. I'm about to try this solution, and I have no doubts that
it'll work. What I'm curious about is why it should work?

I mean knowing what I know about SSD's, they say defragging shouldn't be
necessary, and indeed defragging would be bad for SSD's. Since internal
flash storage is just a lower-performance version of SSD's, I'd have
thought it would be the same thing. However, I'm thinking one
fundamental difference between a flash drive and SSD's is that most
flash drives are formatted with old-fashioned FAT32, while SSD's are
formatted with modern file systems like NTFS, or Linux's Ext4FS, etc.
Perhaps defragging still makes a difference on FAT32 on flash?

Defragging works when a drive has mechanical components that take longer
to access portions of a fragmented file because of the additional motion
involved. Solid state discs should not be affected in this way. The memory
controller is fast enough that random access is essentially the same speed
as sequential access.
 
How about telling us the make and model, as well was memory size and
firmware/software version numbers?

If the memory is add-in, give us that information.

No, no, as the original message said, the memory is completely internal,
this unit doesn't even have a slot for additional flash memory as far as
I can tell. Anyways, here's a link to the thread that I read it on:

Amazon.com: Vincent V's review of Magellan RoadMate 4.3 Inch Widescreen
Port...
http://www.amazon.com/review/R20LTH...e=UTF8&ASIN=B0054J8BWQ&linkCode=&nodeID=&tag=

Above, the reviewer, Vincent V, said that after he upgraded the firmware
and maps on his unit, that's when the performance problems started. He
blamed it on the new firmware itself, and said reverting to the older
firmware fixed it. But a little later down the thread, another reviewer,
William G Lewis, talked to a techie at the company who suggested that
running a defrag on the unit fixes it, no matter what the firmware
version was. So he tried it, and he said it worked and other people also
tried it & confirmed it.
Defragmenting shouldn't affect performance "much", perhaps a factor of
2 for read operations that might take 3 milliseconds versus 6
milliseconds if the data isn't densely stored.

It is possible, however, that incrementally loading data requires long
link chains to be walked, so a database compression, which is
dependent on the software on the device, could speed thing up by
factors of 10 or more.

What I was thinking was that the "database compression" that's happening
here is the file allocation table of the FAT32 file system itself. If
after a defrag, the file tables will get linearized, so forward and
reverse lookups should be pretty simple for a small device such as a GPS
with a low-powered CPU, and only a small amount of RAM for caching. BTW,
the GPS is running Windows CE as its operating system!

Yousuf Khan
 
Yousuf Khan said:
Hi, a couple of people I know just bought the same model of GPS receiver
(big one-day sale at a local retailer). Now, they have noticed that it has
horrible performance, it takes forever to find any Points of Interest
(POI's), among many other things to do with searching on it.

Bet that is why they had a big one day sale at the local retailer, it's dud
that they are getting rid of.

So
I did some research on it for them, and found that many other people are
experiencing the exact same problems. Now in the middle of that research,
a solution turned up which stated that you simply need to defrag the
internal storage of that GPS unit, and it fixes all of its performance
issues. There have been several reports after that that confirmed it. I'm
about to try this solution, and I have no doubts that it'll work. What I'm
curious about is why it should work?

It won't. Defragging can make some sense with slow seeking
rotating media hard drives, with crude linear searches that
have to move through the entire file to search for something,
but it makes no sense at all with internal flash storage which
is by definition faster than a rotating hard drive.

The problem is the very crude linear search used instead.
 
Yousuf Khan said:
Hi, a couple of people I know just bought the same model of GPS receiver
(big one-day sale at a local retailer). Now, they have noticed that it
has horrible performance, it takes forever to find any Points of
Interest (POI's), among many other things to do with searching on it. So
I did some research on it for them, and found that many other people are
experiencing the exact same problems. Now in the middle of that
research, a solution turned up which stated that you simply need to
defrag the internal storage of that GPS unit, and it fixes all of its
performance issues. There have been several reports after that that
confirmed it. I'm about to try this solution, and I have no doubts that
it'll work. What I'm curious about is why it should work?
I mean knowing what I know about SSD's, they say defragging shouldn't be
necessary, and indeed defragging would be bad for SSD's. Since internal
flash storage is just a lower-performance version of SSD's, I'd have
thought it would be the same thing. However, I'm thinking one
fundamental difference between a flash drive and SSD's is that most
flash drives are formatted with old-fashioned FAT32, while SSD's are
formatted with modern file systems like NTFS, or Linux's Ext4FS, etc.
Perhaps defragging still makes a difference on FAT32 on flash?
Yousuf Khan

A flash-card, like PCMCIA, SD, ... has typically far less
sophistication than an SSD and also far worse access times.
There is a reason SSDs come with up to 3 microprocessors
these days.

What makes defreaagin a bad idea on SSD is the additional
writes. Defragging an SSD can still improve performance,
but, with the access times typically present, seeks are
pretty cheap and defragging has limited effect. At the same
time, consumer-grade SSDs have low write endurance and
write-amplification for small write accesses (e.g. a 4k write
really writes 128kB). Now, if an SSD of, say, 256GB has 3 year
lifetime at 20GB written per day, a single defrag would cost you
300 days or more of lifetime in the worst case (every 4k
block needs to be moved). That does not happen in practice,
but you can see that regular defrags could kill a consumer-grade
SSD really fast.

Enterprise-grade SSDs are different, BTW, with, for example,
5 years lifetime at 10 complete overwrites per day and with
far less write-amplification due to large buffers with
supercaps to protect against power-failuer and such things.
There is a reason you can spend easily 4x the money on an
enterprise SSD with the same capacity and performance of
an user-grade one.

Also, as you mention, SSDs typically get filesystems put on
them that are not prone to fragmentaiton, while FAT32 is the
mother of all fragmenting filesytems.

For the fragmentation, I strongly recommend the following:
Make a binary copy of the flash card to HDD. Defragment there.
Make a binary copy of the defragmented version back to the
flash storage. That way you get one overwrite subtracted from
the cards life, not more.

Arno
 
Well, I ran the defrag on one of my friend's GPS's, and it worked like a
charm! Everything speeded up immensely! Interestingly, I checked out the
level of fragmentation prior to after the defrag, and the initial
fragmentation was only 4%, which is usually not even a level of
fragmentation that would even trigger automatic defragmentation. But I
ran a manual defrag on it anyways, and it went down to 0% fragmentation,
and it made a huge difference in responsiveness to the unit!

Yousuf Khan
 
If anyone sees the problem again, please do "analyze" before
defragmenting and report the results.

If it turns out that there are only a 10 to 100 "excess fragments"
than if would seem like the problem is related to I/O errors or
something to do with flash memory operation; if there are thousands or
more, than it would seem to be a software problem with updates to
the data; in between would seem to require looking at in more detail.

Well, the Windows defragger doesn't come with that level of detail, as
far as I can see. It just gives an integer percentage of fragmentation.
(It would be nice to get a map of the actual location of the data
on the flash memory, but I don't think there is a way to do that.)

Yup, it definitely doesn't give that either.

Yousuf Khan
 
Back
Top