Testing an SD Card's true capacity
blog.nothinguntoward.eu
blog.nothinguntoward.eu
"kind" fakes show write errors when writing data. Evil fakes just return garbage data.
I have even witnessed a few fakes which understand a fat32 filesystem and make sure the filesystem data structures and the first and last few kilobytes of every file get mapped to working flash so that a chkdsk won't pick up issues and browsing the files shows no obvious issue. Many cameras store jpeg thumbnails, and the thumbnails continue to show too.
USB Flash Drive Tester: http://www2.vconsole.com/client/?page=page&id=13
The Internet Archive has it: http://web.archive.org/web/20170711105235/blog.nothinguntowa...
It hasn't caught on as much among non-tech types, but it's certainly not a fad, and the solutions are mature, usable and open source. I can understand wanting various features that only a dynamic blog offers (like commenting without Javascript), and I run such a blog myself.
A branded, well specced SD card is not really that expensive that I would risk - for example - my photos which are certainly much more valuable to me than a few $ saved. Even if it's in the 10s $ range.
I honestly just don't get it.
It seems like the distribution channels are poisoned.
A better approach IMO is to test the card first using easily available tools and use backups. This is more work, but can save you a major aggravation. My 2c.
Thanks! I was really not aware that this is a problem and will likely test my cards in trhe future.
This is atrocious.
I basically buy all my camera gear from B&H. The prices are competitive, their shipping is prompt and reliable, and I don't have to think about counterfeits - I have a fair amount of trust that they will not devastate their entire professional-oriented brand by allowing fakes into their supply chain. Getting something fake from B&H would probably be more shocking to me that getting it from an Apple store! Amazon is a different story - you can hardly tell if it's the "real" sandisk (or whoever) you're buying from. Hundreds of listings from hundreds of unknown sellers for the same thing, all slightly different, maybe backed by amazon, maybe not? No thanks.
I'd rather have a reasonable amount of trust in the distribution chain and not have to run checks when the thing arrives.
There is no rhyme or reason what works and what does not, what is fake and what is not. Apparently, we just had a 256GB no name, found on Alibaba SD card for $44 USD pass all the tests with a flying colors ( and go through about 100 full write/full read cycles ) while newest drop shipped from a "fulfillment" center 128Gb Samsung SD Card ( received via email directly to our Samsung contact ) end up being a 32Gb relabeled card.
[Edit: typos]
I was lately trying to buy a new SSD, surely you want a NVMe SSD, so I picked up the Pro version of this top brand SSD, as the spec is the best of the best you can find on the market. Did a simple test, fsync performance is actually worse than the 2 years old SATA SSD from the same brand and that SATA was a EVO module. Sure, they didn't advertise fsync performance, but do you think it is fair not to mention/disclose/report such very poor fsync performance when it is actually slower than their own 2 years old product?
I didn't waste my time to argue with anyone, got it refunded and bought the EVO version of the NVMe SSD as I thought I just forget about the fsync performance and save that $100 difference. Got the fancy EVO NVMe SSD, did a sequential write test, the throughput performance dropped like 40% after certain amount of writes. Carefully checked the product spec, there is some text on the box written in some size 2 font basically telling people to expect such performance drop as there is some cache style design there.
Well, at least I got this very good random IOPS spec, right? Did some tests myself, guess what? The advertised IOPS performance is only true when running in situations considered as rare or even abnormal for such consumer grade SSD - you need a very long IO queue depth. In plain English, if you just buy this consumer grade SSD and use it in a consumer setting, you are not going to get the advertised performance.
Fake or marketing BS? If the whole idea is to fool me to pay for their over stated stuff, then what is the difference?
Were it just a branding thing it wouldn't - from a technical standpoint - be quite so bad, other than you know, the intentional lying...
Over last several years I have ordered a few hundred SD Cards, some from Ebay some from Amazon, some bought at the stores. Store cards were Kingston and PNY branded - bought at Microcenter. Amazon were some unbranded ones and Sandisks.
My method of testing is rather simple - for 64G card generate a file of 63864569856 bytes of random data, dd it onto a card dd result off the card, fingerprint both. If they match the card is probably good.
This is what I found:
* cards with fake sizes will fail to write entire file with IO error
* cards with questionable quality will happily spew the following into kernel log:
[6135586.258783] sd 7:0:0:2: [sdf] tag#0 CDB: Read(10) 28 00 07 6f 4f 80 00 00 08 00 [6135586.258785] blk_update_request: I/O error, dev sdf, sector 124735360 [6135586.654749] sd 7:0:0:2: [sdf] tag#0 FAILED Result: hostbyte=DID_ERROR driverbyte=DRIVER_SENSE [6135586.654752] sd 7:0:0:2: [sdf] tag#0 Sense Key : Hardware Error [current] [6135586.654753] sd 7:0:0:2: [sdf] tag#0 Add. Sense: No additional sense information [6135586.654755] sd 7:0:0:2: [sdf] tag#0 CDB: Read(10) 28 00 07 6f 4f 80 00 00 08 00 [6135586.654757] blk_update_request: I/O error, dev sdf, sector 124735360 [6135586.654760] Buffer I/O error on dev sdf, logical block 15591920, async page read
* Sandisk had the lowest number of the failures when bought on ebay - sub 10%, highest rate of failures when bought on Amazon - over 90%.
* Kingstons from Micro Center passed the tests.
* PNYs failed the test.
The only wrinkle that I currently have is that I use Sandisks in a dual card Nikon configured for dual write. So far two of the cards that passed the tests created a "Card error" reported by the camera on separate occasions with separate slots. I do not however know if the issue is caused by the the adapter or by the card. I just ordered a few new adapters to see if I can isolate it.
[Edit: Formatting]
[Late addition: below]
The cards that triggered an error in camera passed the read/write test after the error so I am inclined to believe it could be the adapter.
One optimization:
dd bs=1M count=N if=/dev/urandom | tee /dev/mmcblk0 | md5sum
md5sum /dev/mmcblk0Sounds like something an evil cloud storage company would do to promote the use of online storage... that and removing SD cards slot from whatever they can.
Here is a couple known articles by "Bunnie" of BunnieStudios, respectively 2013 and 2009: