Camera CF Cards - Speed and Format

Recently I got a 4GB CF card for my Canon EOS 300D camera. I don't really need it because my old 1GB card stores about 125 pictures in raw mode. But I have hit this limit on vacations and eventually I'm going to upgrade to the 400D which has 10M pixels. Also, the 300D is a bit slow to store pictures in raw mode. The 4 picture buffer is quick, but after that it's very slow.

So I ordered a Transcend 4GB 120x CF card from NewEgg for just under $50 shipped. After formatting it in the camera I found it was slightly slower than my old Transcend 1GB 45x card!

I measured this in several ways:

  • Taking pictures in rapid mode until the buffer was full, then measuring how long the camera took to recover.
  • Viewing pictures in the camera and scrolling through them.
  • Reading and writing to the card using my card reader.

  • In all tests, the new card was 10% to 20% slower. This perplexed me so I investigated further.

    Long story short, it's all about how the CF card is formatted - FAT (same as FAT-16) versus FAT-32. The Canon 300D supports all kinds of CF cards - type I and II, with sizes 4GB and beyond. Technically what this means (among other things) is it supports standard FAT (FAT-16) and FAT-32 formats. The camera formats any card over 2GB with FAT-32, using FAT-16 for cards 2GB and smaller. It turns out the camera is slower in FAT-32 mode.

    So I found a way to format the 4GB card in FAT-16 mode. I used my card reader and formatted it from the Windows command line:

    format Z: /FS:FAT /X

    Where Z: is the drive letter of the card reader.
    The /x parameter is optional, but does not hurt.
    During this format process Windows warns and prompts about using a large 64k cluster size. Just answer YES and let it continue. When it's done, your 4GB card will be formatted using FAT-16. Now use it in the camera. Do NOT reformat it in the camera, or it will be FAT-32 again.

    If I format both cards the same (FAT-16 or FAT-32), the 1GB card is slightly (5%) slower than the 4GB card. The 1GB card speed is rated 45x versus 120x for the 4GB card, so one might expect a bigger difference. But the camera is the limiting factor - it's slower than either card. There would probably be a bigger difference on a newer camera with a more modern, faster chipset.

    For either card, FAT-32 is 10% to 20% slower than FAT-16. This is a noticeable difference, probably because this is an early SLR. A newer camera with a more modern chipset might show little or no difference between FAT-16 and FAT-32.

    NOTE 1: in the above format command, do NOT specify /a:64k. This will cause the format to fail. Just let the FORMAT command figure out what cluster size to use.

    NOTE 2: in FAT-16 mode the card storage is less efficient. I can get 523 pictures in FAT-16, 528 in FAT-32. This is less than a 1% difference - insignificant compared to the 10% to 20% speed improvement.