[SOLVED] Do I have a bad SSD?

ravin_29

Commendable
Mar 24, 2019
93
3
1,535
Hi,
I have ADATA 480 GB SSD in my Windows PC. When I run speed tests I am getting somewhat inconsistent results between various sequential write operations. I am using ATTO app and also tried crystaldiskmark app. See the ATTO results. For some IO size Write is great at 450 MB/s sometimes and other times it's too low like between 20 - 75 MB/s.

I also tried AS benchmark and it gives more consistent and more reliable output like around 430 - 450 MB/s every time it's run.
I am only comparing between seq reads / writes not across seq & 4k which is going to be way different.

What can be inferred from this output? Do I have a bad SSD?
Thanks and regards,

atto1.png
 
Solution
Thanks. It's ADATA Ultimate SU650. https://www.adata.com/us/specification/503 ADATA SSD Toolbox app says that my firmware is latest and Secure erase from within SSD toolbox is not supported on Windows 10!

Does free space have anything to do with it? 2 of my partitions are just for holding some data that I need to read regularly. Those partitions don't get updated and hence I have not left much free space there. They are over 95% filled however there's overall 110 GB of unallocated space still left at the end of the overall SSD space.

Also when I use crystaldiskmark I get around 20 MB/s Random 4K write speed which is normal and results are consistent among all tests. These sequential writes are puzzling though. Sometimes...
check the SATA data cable, replace it

use a different SATA port on your motherboard (a native SATA III port is recommended)

install the latest chipset and sata drivers for you motherboard

Update the BIOS of the motherboard

check the ADATA SSD with its tool and update the firmware if available
 
  • Like
Reactions: ravin_29
What SSD is this?

It's only impacting sequential writes so is likely related to the SLC cache. If I know the model I can be more explicit in that response. What I can tell you is that modern ADATA SATA SSDs tend to have a large SLC cache, however older ones like the SP550 were notorious for performance results like this. If that's not the case I would advise doing a secure erase (if possible) to restore the drive to factory state to see if the issue remains - assuming you haven't checked the SSD Toolbox (software) for firmware updates etc. first.
 
  • Like
Reactions: ravin_29

ravin_29

Commendable
Mar 24, 2019
93
3
1,535
What SSD is this?
Thanks. It's ADATA Ultimate SU650. https://www.adata.com/us/specification/503 ADATA SSD Toolbox app says that my firmware is latest and Secure erase from within SSD toolbox is not supported on Windows 10!

Does free space have anything to do with it? 2 of my partitions are just for holding some data that I need to read regularly. Those partitions don't get updated and hence I have not left much free space there. They are over 95% filled however there's overall 110 GB of unallocated space still left at the end of the overall SSD space.

Also when I use crystaldiskmark I get around 20 MB/s Random 4K write speed which is normal and results are consistent among all tests. These sequential writes are puzzling though. Sometimes 400 other times just 20.
 
Thanks. It's ADATA Ultimate SU650. https://www.adata.com/us/specification/503 ADATA SSD Toolbox app says that my firmware is latest and Secure erase from within SSD toolbox is not supported on Windows 10!

Does free space have anything to do with it? 2 of my partitions are just for holding some data that I need to read regularly. Those partitions don't get updated and hence I have not left much free space there. They are over 95% filled however there's overall 110 GB of unallocated space still left at the end of the overall SSD space.

Also when I use crystaldiskmark I get around 20 MB/s Random 4K write speed which is normal and results are consistent among all tests. These sequential writes are puzzling though. Sometimes 400 other times just 20.

Yes, I know the SU650 very well.

Modern controllers can use any free space for dynamic overprovisioning. So partitioning as such doesn't make much difference - flash is arranged logically rather than physically, which is why the SSD needs a flash translation layer (FTL) to communicate with the OS. Different storage language.

In any case, these drives have dynamic SLC caching. Dynamic means it varies based on how full the drive is, usually with a set minimum, and this is not actual SLC but the underlying TLC flash in SLC mode. This means that a 3-bit cell of TLC becomes a 1-bit cell of SLC. So if you check the graph here for example you can see the SLC cache lasts something like 120GB (which takes up 360GB of TLC) and then it drops down to a much slower state.

So a couple of points here. One, the SLC cache is a write cache, which means it impacts write speed directly. Two, this cache is limited and takes up more capacity, which means eventually it has to be emptied and converted back to TLC. Three, this means the size of the cache shrinks as the drive is filled. With a very large cache as on this drive you can get to a state where you're waiting on the SLC to fold - this is the compression of three SLC blocks into one TLC block, which is quite slow.

If the cache is linear with a minimum, for example let's say it's 120GB when empty and 10GB when the drive is full, then your current cache size is roughly 25GB. But the controller is also trying to predict incoming writes as it wants to maintain some cache, so precise performance is inexact. In any case though, this means you can do a benchmark and have very fast (SLC) speeds but if the cache is ignored (known as direct-to-TLC mode, which I didn't mention for simplicity's sake) or otherwise filled you can hit very slow speeds.

Having a large dynamic cache thus has its drawbacks, but it goes further than that. The SU650 is DRAM-less which can compound the issue - but keep in mind that unlike SLC, the DRAM cache is not a write cache (generally) but stores metadata and such. Moreover drives with large caches can get "stuck" in slower modes sometimes, which is where a secure erase (or better yet, sanitize) helps. Secure erase basically wipes the mapping table (addresses for the FTL) so the drive can start fresh.

However in general the natural garbage collection (GC) and TRIM of the drive during idle times will keep the drive performing well, outside of sustained writes.
 
  • Like
Reactions: ravin_29
Solution