Hacker News new | ask | show | jobs
by Dylan16807 2782 days ago
How do you define "pans out"? What performance and price differences between it, flash, and DRAM do you have in mind?

Because I'll keep reminding people that putting a DRAM cache in front of some flash can very closely approximate a large persistent memory. If people wanted to build software for that kind of system, they could do it today. The hardware is not the blocker.

2 comments

Diablo Memory1 used flash DIMMs with DRAM DIMMs as cache. When we tried it, it worked OK for some workloads and poorly for others, but it was also buggy and then the company went out of business. So a large part of "pans out" is simply a production-quality implementation that you can buy.

Note that Optane DIMMs have been delayed by around two years at this point and we still don't know what they will cost.

Cache will always stay just cache, unless it is the same size that an underlying persistent storage. You cannot read or write larger-than-cache chunks without performance degradation. Also you have a start-up cache-warming problem.
Most workloads don't need the entire storage to be at maximum speed all the time. In other words, in most situations cache is plenty for speed purposes. And the mapping layer can hide the chunk sizes. But we still don't see people writing software based around persistence. Maybe a lot of people are simply stuck in their ways, or maybe the benefits aren't actually that big.

As for cache-warming, that's also a configuration issue. When you reboot, leave the 'cache' portion of DRAM alone. Then as soon as the service resumes, the cache is already hot. When you shut down a node for an extended period, consider spending five minutes writing the cache to disc. And the article is about cloud servers anyway, where a shutdown typically implies losing all local storage whether it's persistent or not.