I understand that read/write speeds are dependent on what the phone is, and what the SD card is, but since both are flash memory, I thought the read/write times would pretty much be around the same. I also understand from this question, why it's safer to keep apps on the internal storage: internal memory Vs SD card
But then I learned that “Flash memory speed is not tied to a maximum data transfer speed like USB standards.” source, which I guess is something I should have guessed from just knowing how the read/write speeds vary wildly across from devices. From reading a lot of other material online, I have also learned that apps generally run better from internal storage than from SD cards, except for cases where the SD card I/O speed is better than the phones'. However, looking at this article, it seems most of the phones' write speeds are slower than a Class 10 SD card's minimum write speed, and I couldn't find minimum read speeds for SD cards, so couldn't compare those, so I'm wondering why everyone's benchmark tests showed wild differences between the 2. My question is, in general cases with modern phones, is reading and writing files and media (not Apps) to internal phone storage faster than to an SD card?
On a thread on [XDA forums][3], I saw that rooting a phone allows one to increase the read/write speeds of a phone to an SD card. What happens to the phone that allows the jump in read/write speeds?
Answer
I understand that read/write speeds are dependent on what the phone is, and what the SD card is, but since both are flash memory, I thought the read/write times would pretty much be around the same.
That is a wrong assumption. While they're all flash technology, there's a very wide certain in the speed of the storage. A Class 2 SD Card has a minimum read/write speed of just a paltry 2MB/s, while an Ultra High Speed card can perform at 30MB/s.
With a suitable device that has a suitable high speed SD Card bus, it's possible that SD Card can be faster than the internal storage. This is usually not the case, as many people just buy a standard 2MB/s SD Card, as they're a lot cheaper and most consumers don't need the ultra high speed storages.
Another confounding problem is the kind of workload that a storage is optimized for. One fellow Stack Exchange measured the performance of his Galaxy S2 internal storage vs the external SD Card that he happens to have. What he found is that the internal storage is very fast at read speeds, close to an Ultra High Speed 3 Class card at 33MB/s read, but only manage a paltry 5 MB/s write speed; while his external SD Card are more balanced, at 11 MB/s read but 8 MB/s write.
What that shows is that if that device had been judged under SD Card Speed Class criteria, the internal storage would've been put up as a lower class storage than the external storage. However given that one of the most important work load of the internal storage is loading application to memory, the massive read speed of the internal storage is probably going to give it a real world edge at application loading speed.
On a thread on [XDA forums][3], I saw that rooting a phone allows one to increase the read/write speeds of a phone to an SD card. What happens to the phone that allows the jump in read/write speeds?
What happens is a lot of voodoo with an occasional grain of truth. People have been reporting increased speed when none exists all the time. Storage speeds do not just jump up because you are rooted.
Occasionally, manufacturers may ships the device with underoptimized drivers, and third party tweakers developed an improved driver that are better optimized than the one that ships with the device. Installing custom driver is only possible if you are rooted or if you are flashing custom ROM. It's not the rooting process itself that improves speed, but what you can do with the root power that may give you a boost.
More often though, what happens is that most major optimizations doesn't come free. What you gain in storage speed optimizations, you may lose in battery usage or storage lifetime. Manufacturers almost always optimize for the general case, and optimizing for the general case means trade offs that doesn't necessarily apply to your particular situation. For example, if you're the type to get a new device every six months, it doesn't make sense to optimize for storage longevity, so you might want to trade off using storage more aggressively to increase write speed in a way that reduces its overall life; another possibility is that you may have a good backup plans or do not store important data on device, so you may be willing to trade having the risk of a small chance of fatal data losses for a large speed boost.
No comments:
Post a Comment