Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Flash has finite write endurance. NVMe swap can burn through it pretty quick. Which is isn't that bad because if it wears out you can replace it... unless the drive is soldered.
 help



Mac SSDs are expected to last 8-10 years, even with high use. though Apple don't publish these values specifically, it's possible to start to extrapolate from the SMART data when it starts showing errors.

A good SSD ought to be able to cope with ~600TBW. My ~4.5-year-old MBP gives the following:

    smartctl --all /dev/disk0
    ...
    Data Units Read:                    1,134,526,088 [580.8 TB]
    Data Units Written:                 154,244,108 [78.7 TB]
    ...
    Media and Data Integrity Errors:    0
    Error Information Log Entries:      0
    ...
I'm sure an 8GB RAM machine would use more swap than my 16GB one, but probably not much more, given that mine has had heavy use for development and most people don't use their laptops for anything like that. Even so, that would still put it well within the expectation of 8-10 years, and that's for a $600 laptop.

> I'm sure an 8GB RAM machine would use more swap than my 16GB one, but probably not much more

It's non-linear. If you have a 17GB working set size, a 16GB machine is actively using 1GB of swap, but the 8GB machine is using 9GB. If you have a 14GB working set size, the 16GB machine doesn't need to thrash at all, but the 8GB machine is still doing 6GB.

Meanwhile "SSDs are fast" is the thing that screws you here. Once your actual working set (not just some data in memory the OS can swap out once and leave in swap) exceeds the size of physical memory, the machine has to swap it in and back out continuously. Which you might not notice when the SSD is fast and silent, but now the fact that the SSD will write at 2GB/sec means you can burn through that entire 600TBW in just over three days, and faster drives are even worse.

On top of that, the write endurance is proportional to the size of the drive. 600TBW is pretty typical for the better consumer 1TB drives, but a smaller drive gets proportionally less. And then the machines with less RAM are typically also paired with smaller drives.


Most people using these things aren't going to be using more than 8GB on an ongoing basis, and if they do, they'll not be swapping it like mad as you suggest, because it's only on application-switch that it will matter.

As for 600TB in just over 3 days, I want some of what you're smoking.


> Most people using these things aren't going to be using more than 8GB on an ongoing basis, and if they do, they'll not be swapping it like mad as you suggest, because it's only on application-switch that it will matter.

To begin with, a single application can pretty easily use more than 8GB by itself these days.

But suppose you are using multiple applications at once. If one of them actually has a large working set size -- rendering, AI, code compiling, etc. -- and then you run it in the background because it takes a long time (and especially takes a long time when you're swapping), its working set size is stuck in physical memory because it's actively using it even in the background and if it got swapped out it would just have to be swapped right back in again. If that takes 6GB, you now only have 2GB for your OS and whatever application you're running in the foreground. And if it takes 10GB then it doesn't matter if you're even running anything else.

Now, does that mean that everybody is doing this? Of course not. But if that is what you're doing, it's not great that you may not even notice that it's happening and then you end up with a worn out drive which is soldered on for no legitimate reason.

> As for 600TB in just over 3 days, I want some of what you're smoking.

2GB/s is 8200GB/hour is 172.8TB/day. It's the worst case scenario if you max out the drive.

In practice it might get hot and start thermally limiting before then, or be doing both reads and writes and then not be able to sustain that level of write performance, but "about a week" is hardly much better.


Yeah dude, "Rendering, AI, code compiling,..." is not the target market for this device. It's just not.

> 2GB/s is 8200GB/hour is 172.8TB/day. It's the worst case scenario if you max out the drive.

Right, which is completely and utterly unrealistic. As I said, I want what you're smoking.

I have an 8GB M1 mini lying around somewhere (I just moved country) which was my kids computer for several years before he got an MBP this Xmas. He had the sort of load that would be more typical - web-browsing, playing games, writing the occasional thing in Pages, streaming video, etc. etc. If I can find it (I was planning on making it the machine to manage my CNC) I'll look at the SMART output from that. I'm willing to bet it's not going to look much different from the above...


> Yeah dude, "Rendering, AI, code compiling,..." is not the target market for this device. It's just not.

None of the people who want to do those things but can't afford a more expensive machine will ever attempt to do them on the machine they can actually afford then, is that right?

> Right, which is completely and utterly unrealistic.

"Unrealistic" is something that doesn't happen. This is something that happens if you use that machine in a particular way, and there are many people who use machines in that way.

> He had the sort of load that would be more typical - web-browsing, playing games, writing the occasional thing in Pages, streaming video, etc. etc.

Then you would have a sample size of one determined by all kinds of arbitrary factors like whether any of the games had a large enough working set to make it swap, how many hours were spent playing that game instead of another one etc.

The problem is not that it always happens. The problem is that it can happen, and then they needlessly screw you by soldering the drive.


> The problem is not that it always happens. The problem is that it can happen

Ah. So, FUD, then. Gotcha.

“This ridiculously unlikely scenario is something I’m going to hype up and complain about because I don’t like some aspects of this companies business model”.

600 TBW in 3 days. Pull the other one, it’s got bells on.


I’ve never had an SSD crap out because of read/write cycle exhaustion, and I’ve been using SSD almost exclusively, for over a dozen years. I’ve had plenty of spinning rust ones croak, though. You don’t solder those in, so it’s not really a fair comparison.

I did have one of those dodgy Sandisks, but that was a manufacturing defect.


But how much RAM did you have?

If you have 24GB of RAM and a 12GB working set then it's fine. Likewise if you have 8GB of RAM and a 4GB working set. But 8GB of RAM and a 12GB working set, not the same thing.


Most flash memory will happily accept writes long after passing the TBW 'limit'. If write endurance would be that much of a problem I'd expect the second hand market to be saturated with 8Gb M1 MacBooks with dead SSDs by now. Since that's obviously not the case I think it's not that bad.

> Most flash memory will happily accept writes long after passing the TBW 'limit'.

That's the problem, isn't it? It does the write, it will read back fine right now, but the flash is worn out and then when you try to read back the data in six months, it's corrupt.

> If write endurance would be that much of a problem I'd expect the second hand market to be saturated with 8Gb M1 MacBooks with dead SSDs by now.

That's assuming it's sufficiently obvious to the typical buyer. You buy the machine with a fresh OS install and only newly written data, everything seems fine. Your 30 day warranty/return period expires, still fine. Then it starts acting weird.


> That's the problem, isn't it? It does the write, it will read back fine right now, but the flash is worn out and then when you try to read back the data in six months, it's corrupt.

SSD firmware does patrol reads and periodically rewrites data blocks. It also does error correction. Cold storage is a known issue with any SSD, but I don't have any insight in how bad this problem is in reality. Of course it will wear out eventually, but so will the rest of the system components. There's nothing to be gained by making SSDs that last 30 years when the other components fail in 15.

> Then it starts acting weird.

Is that speculation or do you have any facts to back that up?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: