Buying choices for SSDs

Mon, Mar 8, 2021 5-minute read

Buying disks has, if anything, become more confusing recently. Gone are the days when the only question was 2.5" or 3.5", now there are hardware and software interfaces to worry about as well. I’ve recently wandered into the maze of SSD buying, so I thought it might be useful for others if I shared what I learnt;

2.5" or 3.5"

These two are relatively simple; They refer to the physical size of the disk housing (the thing which contains the disk itself), and the connector is, for anything recent, SATA.

There are a couple of SATA standards which are still around; SATA II, which has a limit of 3Gb/s, and SATA III, which has a limit of 6Gb/s. Most drives are compatible with both standards, so you’d need to be a bit unlucky to buy a drive which doesn’t work with your SATA connector if it’s a 2.5" or 3.5" disk.

The only major problem with these two sizes is making sure you can mount the disk in your machine securely (e.g. I use an Icy Box converter to put my 2.5" SATA SSD in an internal 3.5" drive bay).

m.2

This is where the fun starts; m.2 is a physical connector standard, not all m.2 SSD cards will fit in all m.2 slots :S.

Size

You might see numbers like “2280” when m.2 cards are advertised; These tell you the physical size of the card (2280 means 22 mm x 80 mm). This helps you determine if the card you want to use will fit in the space around your connector. Most will, but some motherboards have slots designed for use with Wi-Fi cards that, when the motherboard is in certain computer cases, do not provide enough space to fit an SSD card, so it’s worth checking.

Keying

m.2 uses keying to help determine the amount of bandwidth a card needs.

Some motherboards have slots which only support specific “keyed” cards; This means they have a solid plastic ridge in the m.2 “B” or “M” position that stops you from putting in a card which has a notch in the other position, so you should always check the m.2 connector before buying any m.2 card.

Protocols

m.2 SSDs can use either SATA or NVMe. m.2 is an evolution of the m.SATA standard and so an m.2 SATA SSD will perform comparably to a 2.5" SATA SSD (you can even place them in a simple 2.5" adapter so they’ll fit). NVMe, on the other hard, is a new protocol which has roughly 5x the maximum throughput than SATA III and can massively out-perform it.

You may find some companies will sell you an NVMe to 2.5" or 3.5" SATA adapter, but you’ll be really losing all the benefit of the NVMe card, so you’ll probably do better just buying an NVMe PCIe card instead.

If you have the option, always use an NVMe SSD. You may not notice a massive difference most of the time, but when a read-heavy operation comes around the ability for NVMe to handle much higher throughput will come in useful.

SSD Construction

Not all SSDs are built the same. You may see terms like SLC, MLC, TLC, QLC, etc. used which have a real-world impact on the performance of your disk. While an m.2 NVMe SSD can be really quick, in reality I’ve seen a 2.5" SATA II SSD perform better than an m.2 NVMe drive when writing data.

The first letter of the ?LC acronym refers to how many bits of data are stored in a single physical flash “cell” on the chips inside the drive. Originally this information was quite easy to find, and SLC meant one bit per cell (Single Layer Cell), MLC meant two bits (Multi Layer Cell), TLC meant three (Triple Layer Cell), etc. In recent times manufacturers have been less open about how many bits per cell a drive has.

The reason this is important is because with a multi-layer cell all the bits have to be read, the appropriate bit changed, and then all the bits written. There are techniques for making this less performance impacting (e.g. only storing 1 bit per cell, then when all the cells have one bit start adding a second bit, then reorganising the disk in the background to maximise the bits per cell so there are “empty” cells for new writes to go into without needing a read), but as the disk fills up it becomes harder to do this. With an SLC drive you don’t encounter the problem, with an MLC drive your drive needs to get roughly half-full before this becomes an issue, with TLC the impact can kick-in at 33% full, QLC it’s 25%, and, with manufacturers talking about Penta-Layer Cell implementations since late 2019, some drives only need to be 20% full before you’ll feel the impact.

It’s worth noting that this is a write problem; If most of your workload is reads you may want to look at two SSDs; One cheaper T/Q/P-LC for the data you’ll read, and then a more expensive, but smaller, SLC/MLC drive which for writes.

In short

If you want the best speed, and you have the money and hardware to support it, go and buy an m.2 S/MLC NVMe SSD like the Samsung 970 Pro. If you’re looking for something to upgrade an old machine, and you rarely write large amounts of data to your disk, you might find buying an m.2 NVMe adapter card with a larger TLC/QLC SSD is all you need.