![]() |
Originally Posted by nkedel
(Post 20863082)
Yup, at least with Windows. There are some interesting compressed-RAM drivers on Linux which let you use a chunk of compressed RAM as part of the swap, and are sometimes used on Android builds.
Really no reason to have a swap file these days, other than that Windows doesn't behave well without one; I usually shrink it to 1gb. It makes no sense to put something reduce the memory to put there something that is supposed to be used only when the memory is full |
Originally Posted by ohliuw
(Post 20873126)
It makes no sense to put something reduce the memory to put there something that is supposed to be used only when the memory is full
In the specific case I mentioned (the zram driver on Linux), exchanging some main memory for a compressible memory area makes a lot of sense for some workloads. The exchange, due to compression, is nowhere near 1:1. |
Originally Posted by ohliuw
(Post 20873126)
You are missing a point here. Swap file is a swap file (albeit called differently) in Windows, Linux, Esxi, etc. Say you have 16G ram. Once it's filled up and the machine needs to put 1g in RAM, it will take 1g from the RAM and put it on the hdd (the swap file). Then it will take the new data and put in the empty space in the memory.
It makes no sense to put something reduce the memory to put there something that is supposed to be used only when the memory is full |
Originally Posted by PTravel
(Post 20863321)
I know. However, I've been monitoring the projected life of my SSDs (I have them installed in three of my machines) using a variety of software. They'll expire long after the computers they're in have become obsolete.
Both seem to be wearing down at about 1%/year. |
Originally Posted by nkedel
(Post 20874202)
In the general case, you're right.
In the specific case I mentioned (the zram driver on Linux), exchanging some main memory for a compressible memory area makes a lot of sense for some workloads. The exchange, due to compression, is nowhere near 1:1. |
Originally Posted by nkedel
(Post 20874202)
In the general case, you're right.
In the specific case I mentioned (the zram driver on Linux), exchanging some main memory for a compressible memory area makes a lot of sense for some workloads. The exchange, due to compression, is nowhere near 1:1. |
Originally Posted by ohliuw
(Post 20878497)
There are loadfull of memory techniques. For example, ESXi uses something called Transient Page Sharing, which in other words is memory dedup.
It also uses memory compression (caching of pages to be swapped), which outperforms swapping since decompressing is faster than loading from storage. However, the swap file is still, and no matter what memory management techniques you use, the swap is the last resort and is meant to be stored AWAY from the memory. I've written some of this stuff professionally. Have you?
Originally Posted by ohliuw
(Post 20878512)
Btw, there are many OSes that better than Linux, you know that, right ;)
In the overall sense of "better," I don't see one, and across all the platforms it's running no other OS is getting anywhere near the amount of testing or engineering effort that Linux is, so I expect that gap to keep growing. (* a single instance of z/OS will be more reliable and scale to bigger hardware; the GUIs in Windows and the MacOS are more mature; Solaris and the free *BSDs have some specific ways in which they're more efficient. I can't think of a single nice thing to say about AIX though :D ) |
Originally Posted by nkedel
(Post 20879484)
Very similar to KSM ("Kernel Samepage merging") on Linux, normally used with KVM.
The difference is in how the techniques are implemented; zram appears to the OS as a block device, and uses the underlying swap-drive mechanism. In a logical sense, swap can refer to anything that takes memory out of the directly-addressable space and requires the OS to do work to access, whether it's on disk, elsewhere in RAM, or hypothetically out on the network somewhere. The code is closely tied to (for example) demand-paging from a memory-mapped file or executable. I've written some of this stuff professionally. Have you? Heh, I'm not so sure about that these days. "Better" can be looked at overall, or for any specific job/set of criteria, of course, and for any specific job, there may be better options(*), but you will not find any other OS scale to as many different jobs as well overall -- or as cost effectively, for most of them. In the overall sense of "better," I don't see one, and across all the platforms it's running no other OS is getting anywhere near the amount of testing or engineering effort that Linux is, so I expect that gap to keep growing. (* a single instance of z/OS will be more reliable and scale to bigger hardware; the GUIs in Windows and the MacOS are more mature; Solaris and the free *BSDs have some specific ways in which they're more efficient. I can't think of a single nice thing to say about AIX though :D ) |
Originally Posted by ohliuw
(Post 20885507)
You keep thinking in terms of desktop OS ;)
I will tell you this about Linux. Vmware used to have 2 versions - ESx and ESxi. Starting version 5, they scrapped ESX as it has Linux service console, and they figured out that 95% of the patching was due to the Linux stuff. Now they only run the VMKernel, which is very short, yet very powerful code ^ Meanwhile VMWare is losing market share to Xen (which uses Linux for a console and to handle some I/O tasks) and KVM (which runs as part of the Linux kernel) and Hyper-V (where I'm not sure how to describe the inter-relationship between the hypervisor and Windows kernel/console.) :D |
| All times are GMT -6. The time now is 3:14 am. |
This site is owned, operated, and maintained by MH Sub I, LLC dba Internet Brands. Copyright © 2026 MH Sub I, LLC dba Internet Brands. All rights reserved. Designated trademarks are the property of their respective owners.