On Saturday, December 30th, 2023 at 12:15 AM, Keith Lofstrom <kei...@keithl.com> wrote: > ... > > A nearer term goal is to replace all the hard drives in the > house with Samsung terabyte SSDs. My test machines suspend > to SSD in less than two seconds, and reboot in ten. >
Suspend doesn't save to your SSD. You are describing Hibernate. Not a semantic difference, they are distinct processes as far as the OS and motherboard are concerned. > I can imagine a multicore CPU and a Linux kernel that > continuously copies checkpoint RAM images to SSD, so that > after power resumes, the machine "comes back" to a state > resembling what I was working on when the lights went out. > That's what Intel Optane memory was supposed to do, but it looks like they discontinued that product line. It was advertised as "persistent memory" which I assume means the data is stored in non-volatile cells, meaning power can be cut with no change to whatever is currently in RAM. > In a well-designed suspend environment, I can "suspend my > thoughts" until the power comes back - and I am reminded > by my computer of what I was doing before the power glitch. > I would like a similar reminder process for other > interrupts - doorbell, phone calls, potty breaks, and > commands from She Who Must Be Obeyed. Indeed, I would > like Linux tools that facilitate "timeouts" for exercise, > meditation, ordering my desk, whatever keeps me at maximum > productivity and happiness. > > "Human interrupt and resume" is just another neglected > aspect of larger processes that are only partly addressed > by a UPS. > Microsoft tried to implement this in Windows 8 as a feature called "Fast Start". They use a hibernation file that holds a representation of the data in RAM and then change the boot process of Windows to operate more like a Resume-from-Hibernate. 10 years later the feature is still complete trash. With Fast Start enabled Windows tends to thrash the SSD to such an extreme that 6Gbps SATA is unable to provide enough bandwidth when peforming other disk-intensive tasks. On high memory systems the hiberfile also balloons to absurd sizes since it needs to match everything in RAM. On top of all that they have a lot of edge cases regarding errors and whether not a given piece of data should be retained. IT departments often disable Fast Start via group policy since it tends to tear apart the Outlook OST/PST database. Office365 apps in general get stuck in weird states due to extremely high disk utilization. And don't even get me started on the way USB devices get lost over time because the hiberfile doesn't get updated when the USB controller randomly resets. Instead of wasting clock cycles maintaining realtime parity between the RAM and SSD we should try bringing the power-to-performance ratio down to the point where the hardware only consumes electricity when it performs a calculation. Maybe ask Intel why they discontinued persistent RAM? -Ben