SD Card

For the folks that have the phone - can you move apps to the SD card?  Can you have the photos and videos be stored to the SD card when you take a pic/video?

Comments

  • razor512razor512 United StatesPosts: 2,683 ✭✭✭✭✭✭✭✭

    You cannot move apps to the micro SD card, but you can have photos and videos saved directly to the micro SD card.

    For most smartphones now, they do not allow moving apps to the micro SD card, due to the the poor IO performance of micro SD cards.

    When thinking about app performance many people focus just on the amount of RAM, and the CPU speed, but little to no attention is given to the performance of the internal storage. Just like how your desktop PC will feel far more responsive if you upgrade from an HDD, to an SSD, for smartphones the flash storage has a large impact on the responsiveness of apps, with the most important being IOPS, and second most important being linear read and write speeds.

    PS, depending on the app,it can opt to store some bulk data to the micro SD card, for example, some offline GPS apps may opt to store the map data onto the micro SD card, since it is unlikely that you will ever be moving faster than it can read new data from the map file, even if on a slower micro SD card.

  • saeedtedsaeedted United StatesPosts: 1,219 ✭✭✭✭✭✭✭✭

    Correct me if I'm wrong but doesn't Nougat give users the option to force app storage into the sd card in developer options?

  • razor512razor512 United StatesPosts: 2,683 ✭✭✭✭✭✭✭✭

    There is the adoptable storage function, but that performs pretty poorly overall, as you treating the micro SD card as internal storage, thus you are bottlenecking the device with storage that is much slower, it is like replacing a 500GB SSD in your PC with a 4TB 5400RPM hard drive. Sure you will have more storage, but the storage performance will be far slower., though in the case of adoptable storage, it will be like a watered down and far less functional version of Intel SRT, where data that happens to be on the internal storage would be fast, while the rest, will be slow, with no real way to optimize it.

    With all that in mind, I do still feel that these functions should be exposed to the user, with a simply warning letting them know that if they use a slow card, that the device will feel far less responsive.

  • Not sure I completely buy this. During the Nintendo Switch reveal, at least one reviewer criticized the decision to use SD as storage, only to receive a deluge of rebuttals explaining how SD is fine due to the specifics of how games are designed these days. At worst, you typically just wind up with noticeably longer load times. I don't how applicable this would be to the vast range of non-gaming apps though.

  • razor512razor512 United StatesPosts: 2,683 ✭✭✭✭✭✭✭✭

    It all depends on how it is designed to use the storage. The issue is that for smartphones, most modern apps the assumption is that you have NAND where you can queue up a bunch of reads and writes, and expect the storage controller to perform the requested tasks with little to no overhead. With UFS 2.0, it behaves largely like an entry level desktop PC SSD. You have fairly high IOPS on the reads and writes, thus you can safely cache data as the app is in use, and not cause the system to hang as it chokes on the multiple read and write requests.

    If you would like to do an interesting test, have a desktop PC with 3 SSDs, or 1 decent SSD and a RAM disk (preferably around 16GB+ in size). Disable the write caching, then copy 1 large file to the SSD from the RAM disk, or other SSD, then after about a second, start a second file transfer to it, and look at the performance impact. Normally there will be almost no drop in overall write speed going to the SSD.

    But if you do the same to a micro SD card, you will see a massive drop in the overall write speed. These cards simply don't like being forced to to multiple tasks at once or they get similar slowdowns to if you try to start 2 different write operations to a HDD.

    The internal storage in smartphones, has come a long way, but micro SD still has the limitations from the early smartphones when Android 1.0 was the newest OS. Read and write speeds on the cards have gotten faster, but everything else has largely remained the same. The cards are good for linear reads and writes, but struggle with anything more complex than that.

    From a performance standpoint, the type of NAND used on the smartphone, has a major impact on how fast the device feels. If you take a SOC like the snapdragon 820, and monitor the CPU usage while performing tasks which people commonly do to see how snappy a phone feels, you will see that the SOC will rarely hit a high CPU load. Just like how upgrading from a HDD to an SSD on a PC will make it feel far quicker upgrading from a core i7 2600k to a core i7 7700k, when the internal storage of a smartphone is improved, the phone feels snappier, and offers a smoother experience. When you make a flagship smartphone with UFS 2.0 storage, treat the micro SD card as internal storage, then you effectively downgrade the device to behaving as if it is using a high end SOC, but low end eMMC storage.

    For the Nintendo switch they use separate game cartridges to handle the bulk of the game data, and then a micro SD card which can handle other large assets that may not require high throughput, as only bits and pieces are loaded where the goal is not to read a 10 or 15GB file containing various assets in one go, but instead to eventually read it all over the course of 3-5 hours.

    Another option is to simply load all common assets into RAM, and leave it there, and then load assets on demand that change depending on which quest you are on. For example, here is a graph of the resource usage of me running around Diamond city in Fallout 4 a while back. The game was optimized for use with hard drives, thus after an initial load, it does not touch the storage much, thus slower storage will mainly mean longer load times, but not much impact on in-game performance.

    Na8og1w.jpg

    The Nintendo switch can't really use that method of just stuffing everything into RAM, but it likely has 3 levels of storage that it can work with to ensure good performance. You have a cartridge which can have fast but cheap ROM where it can deliver high read IOPS. then likely some internal UFS 2.0 storage that will perform similarly to the SSD in your PC, then a micro SD card that will be slow, but likely store files that it can do mostly linear reads on, and not have to touch often after the game is loaded.

    A game can also be designed to be completely installed on the micro SD, but it may be limited to how well it can use the RAM on the device, e.g., map sizes and complexity of the game world may be limited by the RAM, as it will not be able to reliably read new assets from the card in time, and the devs will prioritize a smooth experience over hitching, thus long initial load times, and less complexity.

    Overall, the switch will have much of the software designed with the hardware limitations in mind, but on android, that can't really be done without significant compromises.

  • Thanks for the technical discussion.  I am looking for further guidance on SD card.  So I purchased a Micro SD card (PNY 64gb), I inserted it into the device.  Do I have to format the card or can I just use it out of the box?  Second, is there a specific app that I should utilize that will enable me to move files to the SD card (files like offline map information)?

    Thanks!

  • razor512razor512 United StatesPosts: 2,683 ✭✭✭✭✭✭✭✭

    Usually it is best to have the phone format the card even when new. This ensures that the the most optimal file system is in use, as well as the allocation unit size for the device is in use.

    Another good thing t do when you get a new card, is to completely fill it.

    Whenever I get a new card, I usually fill completely, then compare md5 hashes for the files to ensure that it is properly storing the data.

  • Razor - thanks.  Answer this also, what app should I use to move the files to the SD card?  Here are the things I would like to do: Move off-line maps to the SD card for the HERE app.  Have the video save to the SD card (I see the option for the pictures to be saved there).  Move Music to the SD card.

  • razor512razor512 United StatesPosts: 2,683 ✭✭✭✭✭✭✭✭

    For general file management, any file explorer (including the stock one) can work. For offline maps, that depends on the application, where some will offer the option to store bulk data on the micro SD card.

    The camera app will store video and photos to the micro S card is set to save to external storage, and for music, you either have to manually save them to the micro SD card, or copy them over if you ended up first saving them to the internal storage. Nearly all music playback apps will do a media scan on all storage, thus things will continue to work.

Sign In or Register to comment.