This is the 25th in a series of posts on the Sony a9. The series starts here.
There has been quite some controversy about the Sony a9 write speed with fast cards, with people having difficulty reproducing other’s results. Some of the problem has been with differences in methodology. I explained my current methodology in the previous post:
- Compressed raw
- Full size files
- ES enabled
- Continuous high drive mode
- 1/8000 second
- MF lens
- FW version 1.00 [Now I’m using FW 1.01; this does not seem to make any difference, but i can’t go backwards and check out these new findings]
- ISO 2500
- Recording mode: Standard
- Freshly formatted SD card
- Hold down the shutter release until the buffer fills
- Take your finger off the release
- Time how long it takes before the red light goes out.
In running some more tests today, I noticed some variation in my own results. I hooked the camera up to the jig I use to moniotr battery current, and made this trace with a Sony 128GB 299 MB/s card in the camera:
The time scale is 10 seconds per division. The vertical scale is about 200 ma per division. I started with the buffer empty, and held my finger on the shutter release until the camera slowed down. I left my finger on the release for another 10 seconds or a bit less, then removed it. The camera continued to write to the SD card for almost a minute, after which the current dropped. Whoa! A minute is la lot different than 37 seconds. I observed then the red light on the back of the camera went off, which I had been using to decide when the write was finished. Its disappearance coincided with the drop in current on the scope. So that wasn’t it.
Then I remembered that I hadn’t formatted the SD card before this test. I formatted it, and ran another sequence. Here’s what I saw:
That’s more like it. About 40 seconds. Close enough for government work. It’s hard for be to believe that the number of images on the card makes that much difference.
I needed confirmation. I grabbed a Lexar 2000 300 MB/s card, put it in the camera, and formatted it. Then I reran the test:
About 40 seconds. Note that the current with the Lexar card installed is much less than with the Sony card. That’s another thing I didn’t expect. I figured from a battery-draining perspective, that a SD card’s an SD card. I figured wrong.
That run put a bit more than 300 images on the card. I ran another without reformatting:
Those 300+ images added about 5 seconds to the buffer-clearing time. How bad can this get? I ran another series without formatting:
It’s still getting worse.
At this point, with about 1300 images on the card, I stopped. The buffer-clearing time is now up to about 50 seconds.
The take home lesson:
- Some SD cards are better than others is saving your battery capacity
- Write speed declines as the cards fill up.
These are both surprises to me.
OK, is the slowdown as there get to be more files the fault of the camera or the card? In order to find out, I took the 128 GB Lexar 2000 300 MB/s with about a thousand a9 raw uncompressed files on it over to my workstation, plugged it into a Lexar Professional WorkFlow USB 3.0 reader, and moved the files onto a PCIe SSD, and watched what happened to the rate as more files were read:
Pretty constant with time, and pretty fast, too, although not up to the downhill with a taildwind card spec.
Then I copied the files back onto the SD card without reformatting:
The speed starter out a little higher than the average, dropped to a little lower, and then just hung in there.
Then I reformatted the card using Win 10 to exFAT, and copied the files back onto it again:
The average speed is essentially the same. There was a ramp getting up to it at first. There is no slowing as files are added.
How full was the card when the speed drops? What you’re seeing is likely micro-controller flash page management. Reformatting the card likely triggers logic to mark previously collected used pages as free, thus returning the card to an optimal allocation state. You can experiment with that by trying to manually delete the images on your computer instead of formatting in the camera. You can also try filling up the card with other data on the computer and see how that affects performance vs a card full of camera-generated images.
There is a distinct slowdown with fewer than 300 images at the beginning of the test. That’s 7.2 GB, or 5.6% of the capacity of the card. I just added a test whre I read and wrote the same images to the same card from a computer.
Oskar Ojala says
SD cards are complex beasts 🙂
Based on your results, one can make the hypothesis than Sony’s code that handles the card has room for optimization since the file counts are way too low to have a serious performance impact from a filesystem perspective. I’m also willing to jump on this theory since I’ve seen pretty bad implementations of SD driver code.
Michael Demeyer says
Doesn’t the A-series maintain a database of the images on the card. Could be that adding a record to the database takes longer as it gets larger. Again, an opportunity for code optimization.