Monday, October 6, 2014

Any way to know how many trimmed blocks are on a SSD?


I have replaced my laptop's HDD with a 480 GB SSD.


I left a 20 GB gap at the end of the disk for over-provisioning (the location doesn't matter because it is a SSD). And the main partition has lots of free space.
I used the trim feature integrated to Windows for the main partition.
I then hope this SSD is correctly trimmed, but I have no proof.


Does someone know a way to find how many trimmed blocks/sectors/percentage/whatever are on a SSD?


As there is not standard for this, I'm afraid this require to communicate with the firmware, which involve different method for different SSD.
This is not a problem if this require to boot from Linux.


This is a SanDisk SDSSDA-480G
I already used SanDisk SSD Dashboard, but the values reported are only what Windows reports (this is written in the program).


Answer



The data you search for are only inside a private part on the SSD. Currently no standard way to access the internal SSD controler and its data structures. So even if possible it will be device specific.
I suspect the existence of such programs in the hands of manufacturers, but never saw one. That said, I never searched for them.


With a crucial MX300 SSD I found trimmed blocks are read faster than non trimmed ones. I did it on a big trimmed area where I overprovisionned and in an empty partition.
I also tested it against a partition filled with zeros, to check if highly compressed data could lead to the same result: compressed data were a little slower and distinguishable from trimmed areas.
I don't think this will be easy for small areas, thus difficult to know the real count, but easy enought to be sure big areas are ok.
Probably each SSD respond differently. I tested only ONE of them.


In you case this may be ok to verify is the overprovisionned area is trimmed, and if your low-data partition seems trimmed.
For the regular trimming operated by Windows, I think you can be confident.


No comments:

Post a Comment

linux - How to SSH to ec2 instance in VPC private subnet via NAT server

I have created a VPC in aws with a public subnet and a private subnet. The private subnet does not have direct access to external network. S...