5 ms·
With RAM sizes not keeping up with Moore's Law, it would make sense to have superfast compression as a pervasive, transparent and Hardware-accelerated feature o
by guiriduro 4y ago
With RAM sizes not keeping up with Moore's Law, it would make sense to have superfast compression as a pervasive, transparent and Hardware-accelerated feature of a modern OS. SIMD provides hw acceleration to some extent, and is clearly well used by the compression algos, its time that compression becomes 'just part of the furniture' as we're now at the stage where compression is fast enough that it can couple with reduced latency (smaller compressed blocks to load into caches reduces total memory latency) to deliver multiplicative speedups.
- realityking 4y agoI can’t find the original source anymore but in this Macrumors post is a quote talking about memory compression in macOS: https://forums.macrumors.com/threads/this-compressed-memory-is-a-big-deal.1594260/ https://forums.macrumors.com/threads/this-compressed-memory-...
- t344344 4y agoWe do have such stuff. SSDs compress data internally, Linux has transparent memory page compression, Btrfs has transparent compression...
- MikusR 4y agoOld ssds did that. Modern ones usually don't
- electroly 4y agoAll major OSes have had transparent memory compression for years now.
- ribasushi 4y agoI can't find anything regarding Linux. Could you share the name of the project/daemon?
- electroly 4y agoI believe "zswap" is the main kernel feature supporting memory compression. https://lwn.net/Articles/545244/ https://lwn.net/Articles/545244/ -- I believe this article was written a bit before zswap was merged into the kernel.
- ribasushi 4y agozswap is not transparent memory compression: it specifically focus on compressed paged-out faults. I am not aware of anything that goes the MacOS way: actual compressed ram, with fast in-cpu-cache decompression of the compressed payload carried over the dram bus. This seems to be the current state of the world: https://unix.stackexchange.com/a/374579 https://unix.stackexchange.com/a/374579