2 ms·
How much that matters would depend a lot on use case, though. If the scenario was a database where the data is in PCIe-connected UltraRAM and the indexes are in
by mikepurvis 5y ago
How much that matters would depend a lot on use case, though. If the scenario was a database where the data is in PCIe-connected UltraRAM and the indexes are in RAM RAM, then it would probably be fine since you'd mostly be streaming big contiguous blocks from the UltraRAM to the network.
But certainly ultimately to most benefit from this kind of thing, you'd need a new architecture for it, with a new, RAM-like interface between the CPU and the unified memory backend.
I'd guess we see this kind of thing first either in either niche use cases like microcontrollers, or from somewhere like Apple, since they'd have the vertical integration required to actually pull it off.
- Melatonic 5y agoI guess we could just use normal ram slots assuming it could be powered and whatnot by them. Might be able to build something into the mobo microcontrollers to recognize if ram or ultraram is plugged in and then know what to use each for.
- mikepurvis 5y agoIt's interesting to speculate how much actual adaptation would be needed to get from a naive implementation to one that actually takes advantage of the new capabilities. Thinking of in particular of stuff like Fast Startup in Windows, which under the hood is just turning most power-on events into a restore-from-hibernate. Then again, maybe it's even simpler than that— no fancy copy-RAM-to-storage is needed if the RAM itself is persistent. Literally just power everything down, and then when you power on later, pick up from where you left off with nothing more to say about it.
- Melatonic 5y agoHibernate is actually the first thing I always disable on any windows machine - it takes up a lot of extra ram. And with SSD startup from cold is usually so fast I find fast startup not all that great either.