Linux: Is Swap Necessary?

Submitted by Jeremy
on May 27, 2004 - 5:04am

Following recent discussions about tuning swapiness [story] and dynamically allocating swap as needed [story], a new discussion ensued on the lkml questioning the need for swap altogether when a system has "sufficient" ram.

Nick Piggin [interview] explained that swap can improve performance no matter how much RAM you have, "well it is a magical property of swap space, because extra RAM doesn't allow you to replace unused memory with often used memory. The theory holds true no matter how much RAM you have. Swap can improve performance. It can be trivially demonstrated." This said, numerous Linux users do report success running a swapless system.

As to why swap performance might be becoming more and more an issue over time, Rik van Riel [interview] suggested that this could be due to the growing gap between the speed of RAM and the speed of hard drives, "the speed of hard disks doesn't grow anywhere near as fast as the size of memory and applications. This means that over the last years, swapping in any particular application has gotten SLOWER than it used to be ... This means that even though the VM is way smarter than it used to be, the visibility of any wrong decision has increased."


From: Anthony DiSante [email blocked]
To:  linux-kernel
Subject: why swap at all?
Date: 	Wed, 26 May 2004 02:38:23 -0400

As a general question about ram/swap and relating to some of the issues in 
this thread:

	~500 megs cached yet 2.6.5 goes into swap hell

Consider this: I have a desktop system with 256MB ram, so I make a 256MB 
swap partition.  So I have 512MB "memory" and if some process wants more, 
too bad, there is no more.

Now I buy another 256MB of ram, so I have 512MB of real memory.  Why not 
just disable my swap completely now?  I won't have increased my memory's 
size at all, but won't I have increased its performance lots?

Or, to make it more appealing, say I initially had 512MB ram and now I have 
1GB.  Wouldn't I much rather not use swap at all anymore, in this case, on 
my desktop?

-Anthony
http://nodivisions.com/


From: Buddy Lumpkin [email blocked] Subject: RE: why swap at all? Date: Wed, 26 May 2004 00:31:16 -0700 This is a really good point. I think the bar should be set at max performance for systems that never need to use the swap device. If someone wants to tune swap performance to their hearts content, so be it. But given cheap prices for memory, and the horrible best case performance for swap, an increase in swap performance should never, ever come at the expense of performance for a system that has been sized such that executable address spaces, libraries and anonymous memory will fit easily within physical ram. This of course doesn't address the VM paging storms that happen due to large amounts of file system writes. Once the pagecache fills up, dirty pages must be evicted from the pagecache so that new pages can be added to the pagecache. --Buddy
From: Nick Piggin [email blocked] Subject: Re: why swap at all? Date: Wed, 26 May 2004 18:44:58 +1000 Buddy Lumpkin wrote: > No. I am not making any assertions whatsoever. I am just calling out that > systems that run happily from physical memory and are not in need of swap > should never sacrifice an ounce of performance for even drastic improvements > to swap performance. Swap is a band-aid for saving money on memory and a few > years ago, it allowed you to save a substantial amount of money. > Hi Buddy, Even for systems that don't *need* the extra memory space, swap can actually provide performance improvements by allowing unused memory to be replaced with often-used memory. For example, I have 57MB swapped right now. It allows me to instantly grep the kernel tree. If I turned swap off, each grep would probably take 30 seconds. The VM doesn't always get it right, and to make matters worse, desktop users don't appreciate their long running jobs finishing earlier, but *hate* having to wait a few seconds for a window to appear if it hasn't been used for 24 hours. > Whether the cost savings for utilizing swap vs buying more memory are > substantial as of late is subject to opinion, but I cannot think of a system > that I have sized in the last three years where swap was expected to be used > except in un-anticipated memory shortfalls. In fact, if I didn't plan to > store crash dumps on the swap device, I think I would have omitted swap all > together in many configurations. > > I have worked at large fortune 500 companies with deep pockets though, so > this may not be the case for many. I make this point though because I think > if it isn't the case yet, it will be in the near future as memory becomes > even cheaper because the trend certainly exists. > > As for your short, two sentence comment below, let me save you the energy of > insinuations and translate your message the way I read it: > [snip] I think the comment was rather directed at a specific problem you described: > This of course doesn't address the VM paging storms that happen due to large > amounts of file system writes. Once the pagecache fills up, dirty pages must > be evicted from the pagecache so that new pages can be added to the > pagecache. This sounds like you are having a serious problem, and it would be great if you could describe it in detail. kernel version, workload, description of the system, vmstat output, etc. Let's keep it nice. Best regards Nick
From: John Bradford [email blocked] Subject: Re: why swap at all? Date: Wed, 26 May 2004 10:34:37 +0100 Quote from Nick Piggin [email blocked]: > Even for systems that don't *need* the extra memory space, swap can > actually provide performance improvements by allowing unused memory > to be replaced with often-used memory. That's true, but it's not a magical property of swap space - extra physical RAM would do more or less the same thing. John.
From: Nick Piggin [email blocked] Subject: Re: why swap at all? Date: Wed, 26 May 2004 19:48:10 +1000 John Bradford wrote: > Quote from Nick Piggin [email blocked]: > >>Even for systems that don't *need* the extra memory space, swap can >>actually provide performance improvements by allowing unused memory >>to be replaced with often-used memory. > > > That's true, but it's not a magical property of swap space - extra physical > RAM would do more or less the same thing. > Well it is a magical property of swap space, because extra RAM doesn't allow you to replace unused memory with often used memory. The theory holds true no matter how much RAM you have. Swap can improve performance. It can be trivially demonstrated.
From: Martin Olsson [email blocked] Subject: Re: why swap at all? Date: Wed, 26 May 2004 12:45:26 +0200 Hi Linux-gurus, I agree with Anthony Disante, maybe not all users want swapping. I have myself felt very annoying with swapping lately but I've not yet tried to disable it. In school I've studied the swapping concept from a theoretical point of view, and I fully understand the fact that swapping, if used properly, can both increase performance and provide a safe way to get out of a bad situation when the box runs out of memory. The problem is that in reality this does not work, not on Linux nor on Windows 2000 which I use at home. Unfortunately I cannot provide a specific reason why it does not work, I'm very much a end-user/desktop-user, I'm not a kernel hacker (yet). But I see two things that needs improvement atm: A) when I do large data processing operations the computer is always very very slow afterwards B) if I have X Mb of RAM then there should not be imho a single swap read/write until the whole of my X Mb RAM is completely stuffed, is this so today? --- Also, imagine that I disable swap today and start a large data processing operation. During this operation I try to start a new process, here ideally the program should not OOM but instead the memory allocated for the data processing operation should be decreased. Is this possible using today's technology? Can be divide memory into two sorts, one for processes (here to stay memory) and another sort for batch operations (where the amount of memory does not really matter but less memory means less performance). I see the problem with "taking memory back" though, I guess its impossible. Regards, /m
From: David Schwartz [email blocked] Subject: RE: why swap at all? Date: Wed, 26 May 2004 09:33:44 -0700 > I agree with Anthony Disante, maybe not all users want swapping. I have > myself felt very annoying with swapping lately but I've not yet tried to > disable it. You're probably really just annoyed with physical memory that's too small to hold your working set. Believe it or not, having swap delays the onset of this problem. > In school I've studied the swapping concept from a theoretical point > of view, and I fully understand the fact that swapping, if used > properly, can both increase performance and provide a safe way to get > out of a bad situation when the box runs out of memory. The problem is > that in reality this does not work, not on Linux nor on Windows 2000 > which I use at home. Unfortunately I cannot provide a specific reason > why it does not work, I'm very much a end-user/desktop-user, I'm not a > kernel hacker (yet). But I see two things that needs improvement atm: I don't think you really do understand it from a theoretical point of view, because you say: > A) when I do large data processing operations the computer is always > very very slow afterwards Of course, this is because the working set has changed. However, with swap, the least used pages can be evicted from physical memory. Without it, there may be no place to put the least used pages and more frequently used pages have to be evicted. > B) if I have X Mb of RAM then there should not be imho a single swap > read/write until the whole of my X Mb RAM is completely stuffed, is this > so today? It depends what you mean by "stuffed". On a modern operating system like Linux, pretty much all of your physical memory is in use all the time. Without swap, dirty pages cannot be evicted from physical memory, even if they haven't been used for days. If your physical memory exceeds your working set size, you win no matter what. But without swap, every dirty page is part of your working set, even if it hasn't been read/written for days. > Also, imagine that I disable swap today and start a large data > processing operation. During this operation I try to start a new > process, here ideally the program should not OOM but instead the memory > allocated for the data processing operation should be decreased. Is this > possible using today's technology? Can be divide memory into two sorts, > one for processes (here to stay memory) and another sort for batch > operations (where the amount of memory does not really matter but less > memory means less performance). I see the problem with "taking memory > back" though, I guess its impossible. No, it's not difficult. The OS takes physical memory back all the time by swapping. You seem to be missing a fundamental concept. Physical memory will always get full because the OS will always keep copies of file data in memory just in case it needs them again. Because new pages are always being read in and processes are always allocating new memory, the OS will have to make a decision of what pages to evict from physical memory. If a page is dirty, it can only be evicted if there's swap. So if you have dirty pages that are very rarely used, swap allows you to keep more hot, clean pages in memory. A lot of people feel subjectively that swap makes a system slow. There's anecdotal evidence that swap does horrible things or "must be badly broken because the machine gets slow" on almost every operating system that supports swapping. In most cases, it's just a case where the real working set has exceeded physical memory, and in that case, swap is just doing what it's supposed to be doing. DS
From: Denis Vlasenko [email blocked] Subject: RE: why swap at all? Date: Wed, 26 May 2004 13:41:10 +0300 On Wednesday 26 May 2004 11:30, Buddy Lumpkin wrote: > I have worked at large fortune 500 companies with deep pockets though, so > this may not be the case for many. I make this point though because I think > if it isn't the case yet, it will be in the near future as memory becomes > even cheaper because the trend certainly exists. "640k will be enough for anyone" ? No. Unfortunately, userspace programs grow in size as fast as your RAM. Because typically developers do not think about size of their program until it starts to outgrow their RAM. Today, 128M RAM swapless is barely enough to run full spectrum of apps. OpenOffice and Mozilla "lead" the pack, followed by KDE/Gnome etc. -- vda
From: Rik van Riel [email blocked] Subject: RE: why swap at all? Date: Wed, 26 May 2004 08:30:59 -0400 (EDT) On Wed, 26 May 2004, Denis Vlasenko wrote: > No. Unfortunately, userspace programs grow in size as fast > as your RAM. Because typically developers do not think > about size of their program until it starts to outgrow > their RAM. It's worse than that. Way worse. The speed of hard disks doesn't grow anywhere near as fast as the size of memory and applications. This means that over the last years, swapping in any particular application has gotten SLOWER than it used to be ... This means that even though the VM is way smarter than it used to be, the visibility of any wrong decision has increased. I wonder if there's a way we could change the VM so it could recover faster from any mistakes it made, instead of trying to prevent it from making any mistakes (those will happen anyway, the VM can't predict the future). -- "Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it." - Brian W. Kernighan
From: Rik van Riel [email blocked] Subject: RE: why swap at all? Date: Wed, 26 May 2004 08:19:34 -0400 (EDT) On Wed, 26 May 2004, Buddy Lumpkin wrote: > No. I am not making any assertions whatsoever. I am just calling out > that systems that run happily from physical memory and are not in need > of swap should never sacrifice an ounce of performance Executables and shared libraries live in the filesystem cache. Evicting those from memory - because swapping is disabled and "the VM should remove something from cache instead" - will feel exactly the same as swapping ... -- "Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it." - Brian W. Kernighan
From: Roger Luethi [email blocked] Subject: Re: why swap at all? Date: Wed, 26 May 2004 10:27:12 +0200 On Wed, 26 May 2004 02:38:23 -0400, Anthony DiSante wrote: > Now I buy another 256MB of ram, so I have 512MB of real memory. Why not > just disable my swap completely now? I won't have increased my memory's > size at all, but won't I have increased its performance lots? > > Or, to make it more appealing, say I initially had 512MB ram and now I have > 1GB. Wouldn't I much rather not use swap at all anymore, in this case, on > my desktop? Swap serves another (often underrated) purpose: Graceful degradation. If you have a reasonably amount of swap space mounted, you will know you are running out of RAM because your system will become noticeably slower. If you have no swap whatsoever, your first warning will quite possibly be an application OOM killed or losing data due to a failed memory allocation. Think of the slowness of swap as a _feature_. Roger
From: John Bradford [email blocked] Subject: Re: why swap at all? Date: Wed, 26 May 2004 10:23:32 +0100 Quote from Roger Luethi [email blocked]: > On Wed, 26 May 2004 02:38:23 -0400, Anthony DiSante wrote: > > Now I buy another 256MB of ram, so I have 512MB of real memory. Why not > > just disable my swap completely now? I won't have increased my memory's > > size at all, but won't I have increased its performance lots? > > > > Or, to make it more appealing, say I initially had 512MB ram and now I have > > 1GB. Wouldn't I much rather not use swap at all anymore, in this case, on > > my desktop? > > Swap serves another (often underrated) purpose: Graceful degradation. > > If you have a reasonably amount of swap space mounted, you will know > you are running out of RAM because your system will become noticeably > slower. If you have no swap whatsoever, your first warning will quite > possibly be an application OOM killed or losing data due to a failed > memory allocation. > > Think of the slowness of swap as a _feature_. There is a very negative side to this approach as well, especially if users allocate excessive swap space. A run-away process on a server with too much swap can cause it to grind to almost a complete halt, and become almost compltely unresponsive to remote connections. If the total amount of storage is just enough for the tasks the server is expected to deal with, then a run-away process will likely be terminated quickly stopping it from causing the machine to grind to a halt. If, on the other hand, there is excessive storage, it can continue running for a long time, often consuming a lot of CPU. When the excess storage is physical RAM, this might not be particularly disasterous, but if it's swap space, it's much more likely to cause a serious drop in performance. For a desktop system, it might not be a big deal, but when it's an ISP's server in a remote data centre, it can create a lot of unnecessary work. John.
From: Roger Luethi [email blocked] Subject: Re: why swap at all? Date: Wed, 26 May 2004 11:30:08 +0200 On Wed, 26 May 2004 10:23:32 +0100, John Bradford wrote: > A run-away process on a server with too much swap can cause it to grind to > almost a complete halt, and become almost compltely unresponsive to remote > connections. > > If the total amount of storage is just enough for the tasks the server is > expected to deal with, then a run-away process will likely be terminated > quickly stopping it from causing the machine to grind to a halt. I'm not sure your optimism about the correct (run-away) process being terminated is justified. Granted, there are definitely scenarios where swapless operation is preferable, but in most circumstances -- especially workstations as the original poster described -- I'd rather minimize the risk of losing data. Roger
From: John Bradford [email blocked] Subject: Re: why swap at all? Date: Wed, 26 May 2004 11:35:53 +0100 Quote from Roger Luethi [email blocked]: > On Wed, 26 May 2004 10:23:32 +0100, John Bradford wrote: > > A run-away process on a server with too much swap can cause it to grind to > > almost a complete halt, and become almost compltely unresponsive to remote > > connections. > > > > If the total amount of storage is just enough for the tasks the server is > > expected to deal with, then a run-away process will likely be terminated > > quickly stopping it from causing the machine to grind to a halt. > > I'm not sure your optimism about the correct (run-away) process being > terminated is justified. Granted, there are definitely scenarios > where swapless operation is preferable, but in most circumstances -- > especially workstations as the original poster described -- I'd rather > minimize the risk of losing data. Well, I am basing this on experience. I know an ISP who had their main customer webserver down for hours because of this kind of problem - the whole thing created a lot of work and wasted a lot of time. In this particular scenario, I think the run-away process was probably using up almost two thirds of the total RAM, so I'm pretty confident the correct process would have been terminated. I know that trusting the kernel to terminate the correct run-away process might seem like a bit of a risky approach to take with respect to loosing data, especially where a little bit of swap space might come to the rescue. However, in my opinion, if a machine has insufficient storage for the intended task then that's an error condition straight away. So, I am not really concerned with trying to make sure that a desktop system running an application which the user has underestimated the memory usage of doesn't crash no matter what. The machine is operating in an error condition, so data loss should be expected. No, I am more concerned about preventing unexpected usage of a machine from causing large scale slowdowns, and unavailability to other users. For example, if a run-away process occurs, or one user on a multi-user system uses up excessive resources. Excessive swap space might create an illusion of protecting against data loss, by allowing things to continue working no matter what, just a bit slower, but for multi user systems, it's preventing normal usage of the system. This can indirectly lead to data loss if the machine is not accessible over the network to perform a critical function. Ultimately, once a machine is spending 99% of it's time swapping, it's likely to be well past the point where it's practical to log in remotely and fix it. However, I think that there are probably more machines using excessive swap which would benefit from reducing it, than the other way round, though, simply because users are not as aware of the potential problems. My opinion was that the machine was already in an error condition the minute I couldn't access it remotely - a significant number of customer's webpages were inaccessible, which potentially means lost business for them. I assume that the scenario you were thinking of when you mentioned data loss above was a system running a critical process which is using, for example, 90% of the available storage - in that case if another process starts up, and uses up the rest of the available storage, then the first process will probably be terminated, whereas if you increase the amount of storage, (either by adding swap or physical RAM), then the second process can continue for longer. However, in this situation, I can see two possibilities - either the second process is genuine, (I.E. not a run-away process), in which case the machine has insufficient storage for it's intended purpose, which is an operator error in my opinion, or the process is a run-away process, in which case a little extra storage isn't going to do much other than buy time before the first process is terminated. This may give an operator chance to log in and fix the problem, (probably by terminating the run-away process), but if this extra storage is swap space, the machine may well become unresponsive very quickly, making it virtually impossible to log in remotely, and making other network services on that machine virtually inaccessible. Eventually the run-away process may use up the swap space, and then the first process will probably be terminated as before, just not as quickly. If instead of a little extra storage, a lot was added such that the first process was no longer using more storage than the run-away process was when storage was full, then the kernel will hopefully terminate the run-away process, but probably only after the machine has been unresponsive for a long time, possibly causing other problems. Basically, I would be skeptical about using a desktop system where one terminated process could cause data loss to the extent that I couldn't easily restore the data. John.
From: Nick Piggin [email blocked] Subject: Re: why swap at all? Date: Wed, 26 May 2004 20:37:50 +1000 John Bradford wrote: > > > Well, I am basing this on experience. I know an ISP who had their main > customer webserver down for hours because of this kind of problem - the whole > thing created a lot of work and wasted a lot of time. > > In this particular scenario, I think the run-away process was probably using > up almost two thirds of the total RAM, so I'm pretty confident the correct > process would have been terminated. > I think this is somewhat orthogonal to whether swap should be used or not. What we should be doing here is enforcing the RSS rlimit. I have a patch from Rik to do this which needs to be merged. Hopefully this would give you the best case situation of having only the runaway process really slow down, without killing anything until the admin arrives.

Related Links:

Old Addage...

Anonymous
on
May 27, 2004 - 7:02am

This whole conversation reminds me an addage I coined a while ago as applied to household clutter:

"The amount of junk you accumulate *WILL* expand to fill all available space ... and then some"

So..

Anonymous
on
May 27, 2004 - 10:22am

Why not set a side part of the physical ram as a swap space [ramdisk plus swap file]? Would this not solve the appearance of performance problems on desktop systems that have plenty of physical memory?

I don't think that would ever

Anonymous
on
May 27, 2004 - 11:47am

I don't think that would ever do any good. Unless there is a difference between the speed of different parts of RAM. If all RAM is equally fast, using no swap at all should always be better than using a ramdisk for swap. If there is a difference in speed, using the slower part of RAM as a ramdisk would be a good idea.

Compression

Anonymous
on
May 27, 2004 - 1:55pm

How about compressing sleeping aplications right in RAM? Or building your "swap partition" on a compressed RAMdisk? This would cause different parts of RAM to appear to operate at different speeds, while increasing usable memory space.

I'm pretty sure this sort of thing was popular 10 years ago or so (I even managed to do something like it on a 386 with Win3.1 in 6 megs of RAM), but it was too slow. With todays crazy-fast systems, I wonder if it's not worth another look.

compressed caching: [1] [2]

Anonymous
on
May 27, 2004 - 2:19pm

compressed caching: [1] [2]

Ooh

Anonymous
on
May 28, 2004 - 7:57am

Ooh, the benchmarks on link [2] look promising.

Why even compress it?

Anonymous
on
May 28, 2004 - 10:54pm

>I don't think that would ever do any good. Unless there is a difference
>between the speed of different parts of RAM. If all RAM is equally
>fast, using no swap at all should always be better than using a ramdisk
>for swap. If there is a difference in speed, using the slower part of
>RAM as a ramdisk would be a good idea.

What makes you claim this, without benchmarks to back you up?

No one has answered the original question: Couldn't 1GB of RAM be equivalent to 512MB + 512MB swap?

I'd like to see some benchmarks with 1GB RAM total and a 512MB ramdisk swap space, **uncompressed**. Maybe this really is the way to go.

answering the original question

Anonymous
on
May 29, 2004 - 2:34am

The extra 512mb of RAM will not replace swap space, because it will be eaten up by file cache. File data that would have been discarded after a period of non use will now just be held longer. After the RAM is full of file cache, the lack of swap will preclude the kernel from reclaiming RAM for newly started processes or other need to expand the working set.

(disclaimer: I have no idea what I am talking about)

I have no clue about how all

Anonymous
on
May 29, 2004 - 4:57am

I have no clue about how all this work in the linux kernel, but please think about this for half a second:

Swap space is a way to emulate physical ram, right? So if a system only has 512MB, you can add 512MB of swap to make the system think it has 1GB. (Of course you also need a way to tell it to preffer to use the physical over the swap.) Right now everyone use their hard disks, a medium that is about a million times slower than ram, for swap. Wouldn't it be better to use something faster? Something that's only a 100 or even 10 simes slower than ram? Or... something that is _equally_fast_ as ram?

[sarcasm}
Hmmm, where can we find something that is as fast as physical ram and big enough to hold 512MB?
[/sarcasm]

Swap space is a way to emulat

on
May 29, 2004 - 7:14pm

Swap space is a way to emulate physical ram, right?


No, generally swap space is a repository to hold things from memory when memory is low. Things in swap cannot be addressed directly and need to be paged into physical memory before use, so there's no way swap could be used to emulate memory.

So no, 512M+512M swap is not the same as 1G memory and no swap.

Swap space is a way to emulat

Anonymous
on
May 30, 2004 - 1:16am

Would you recommend emulating SWAP in RAM if
space in RAM was cheaper than on HDDs ???

If no then only reason to use SWAP is price of HDDs
If yes please give me a hint why ?

(Lets for a moment assume that prices of RAM
have fallen)

Would you recommend emulating

Anonymous
on
May 30, 2004 - 2:08am

Would you recommend emulating SWAP in RAM if space in RAM was cheaper than on HDDs ???

No, not at all. If RAM was cheaper than HD, the most sensible thing to do would to just remove all the swapping code from the kernel. But since RAM is about 300 times as expensive as HD, it is unlikely RAM is going to be cheaper than HD anytime soon.

If no then only reason to use SWAP is price of HDDs

Excactly.

Would you recommend emulating

Anonymous
on
May 30, 2004 - 2:37am

But since RAM is about 300 times as expensive as HD, it is unlikely RAM is going to be cheaper than HD anytime soon.

I think this ratio will get better in favour of RAM
soon from now,
One of many reasons is growing demand for mobile devices of different kinds that have no moving parts inside (so they do not break easily).
The more demand they generate the more prices will fall :)
Just compare this to prices of LCD monitors...
(five years ago nad now)

Didn't you see Riel's comment?

on
August 29, 2004 - 11:15pm

Van Riel said in an email above:

"Executables and shared libraries live in the filesystem
cache. Evicting those from memory - because swapping is
disabled and "the VM should remove something from cache
instead" - will feel exactly the same as swapping ..."

This means there is still extra time from disk access to replace what gets evicted when there is no swap. It is not time free to just shut off swap.

Wouldn't the Java VM be a useful example?

Anonymous
on
May 29, 2004 - 8:15am

It's been a while since I really had my head in VM stuff, but I have read some discussions recently on the latest Java VM's. In those implementations, the heap is divided into a short-lived and long-lived memory space. Information that is often needed eventually gets moved into long-lived space and information that is loaded and used for a short duration gets garbage collected more often.

It seems to me that using RAM as swap disk space could be used in a similar fashion. Just divide RAM by age mark data as old enough to be written over.

It's just a thought. I would be interested in any comments about why this wouldn't work.

No, the Java VM wouldn't be a useful example.

Anonymous
on
May 30, 2004 - 2:24pm

The Java VM (virtual machine) memory manager is different. The main reason they do the short-lived/long-lived partitioning thing is to reduce garbage collection time. "Garbage" is memory that will never (ever, ever, ever) be used again.

OS VM systems (virtual memory) already keep track of RAM pages by "age" and use this information to decide which RAM page to move to swap when memory is tight.

Using RAM as swap is wrong because you're not taking advantage of the direct access RAM gives you. When you get a page fault, you'll be unnecessarily copying data from one RAM block to another. If, for some reason, you like how the swapper makes your computer behave, it would make more sense to tweak the behavior of the paging mechanism rather than to use RAM as swap.

If it did, one day, become possible to buy all the RAM you'd ever need, then the OS has a lot less work to do. It would not be the same as merely using some of your RAM as swap. Once you get rid of swap, the memory management decisions are much easier. The only way to free up space for new allocations is to flush cached data. You simply cannot move application data out of RAM (at least not the writable data).

Eaten up by file cache - caching optimisitic but often a waste

Anonymous
on
May 29, 2004 - 12:19pm

Caching all file data, though optimistic, is often a waste. Take sorting, for instance. In a standard sort, input data is only read once so the pages needn't stay in memory. As a matter of fact, if they stay in memory then they clog up the VM system and compete with the sorting application which is trying to allocate memory to hold the data for in-core sorting. If the data is too big to fit in memory (RAM) in its entirety then the job goes external (out-of-core) and memory contents are written to an intermediate file as a sorted run. It probably isn't worth caching the pages written to this file (for anything but, maybe, a lazy write and immediate discard from the VM) since the sort needs to turn right around and fill up memory again with more input data. The process of filling up memory with data, sorting it, and writing a sorted run to the intermediate file repeats until there is no more data. At this point, the sort needs read the sorted runs back from the intermediate file, merge them, and write them to an output file. There is really no reason to hold pages from the intermediate file in memory after they've been read since they will never be needed again. I think there was some kernel discussion a while back about providing a "do not keep this file page in the VM" flag, settable on a file open call just for this type of scenario.

Also, if one process writes a file sequentially and the file is slightly larger than memory, the first few pages of the file will have been written to disk while the remainder of the file resides in cache. None of the pages in cache will be worth a damn for a follow-on process which wishes to sequentially read the just-produced file (since it must start at the beginning of the file and the beginning of the file is not in cache). I've heard this described as a dog chasing its tail since (due to LRU) pages will be removed from the cache in file-sequential order to satisfy the deman to sequentially read pages from the file that are not in cache. (e.g. if memory can hold 100 pages but the file is 105 pages then after the file is produced, pages 6 to 105 will remain in the cache but the follow-on process will want to read page 1. Well, page 6 will be removed from the cache since it is the oldest so that page 1 can be read... page 7 removed so 2 can be read, page 8 removed so 3 can be read, etc., etc.)

[Note: yes, I'm blurring the distinction between file page, VM page, memory page, etc. The point is still the same.]

Bottom line is that competition for physical memory between applications and file cache is often a waste (especially a memory hungry app that performs a lot of I/O like a DBMS). Unfortunately, on OSs like MS Windows, there is no real way to control the file cache size and/or behavior except through, maybe, third party utilities.

Let applications choose what is cached

Anonymous
on
May 31, 2004 - 7:02pm

Why have an OS option to let applications mark some stuff to not be cached?

Not again...

on
June 1, 2004 - 11:53am

I've said this in various places throughout this discussion; the opportunity is provided for apps to tell the OS what's worth keeping in memory, and what isn't. Look at the man pages for madvise(2) and posix_fadvise(2) on a Linux system. The fact they don't suggests that it's not yet worth it for app developers.

so, why not make it so?

Anonymous
on
May 30, 2004 - 7:31am

So ok, now I understand more why I might want swap space on a machine with even a lot of physical memory: because of the explanation that dirty infrequently used pages can't ever be flushed from physical memory anywhere, so take up redundant space. But the explanation in the parent post doesn't explain why, if it's desirable to have a dump for these infrequently used cached pages, you couldn't actually allocate a virtual-virtual-memory section in physical memory: i.e. *not* allow the whole of RAM to be used as a file cache, but keep a bit back to act as virtual but very fast swap. If you had oodles of physical memory.

I know this is crazy talk, and really just a way of describing the problem. But why not have an algorithm to keep some physical memory back, if having swap space is the only current way of ensuring this?

(disclaimer: I swear I know even less)

Why swap to RAM?

Anonymous
on
May 30, 2004 - 2:29pm

"Swapping to RAM" is wrong because you NEVER gain anything. You'd just be copying data from one block of RAM to another block of RAM. This makes no sense (assuming both blocks are directly addressable). All you're doing is adding extra memcpys.

A = 512M Memory(Fast), B = Ha

Anonymous
on
May 31, 2004 - 8:44am

A = 512M Memory(Fast), B = Harddrive (Slow), C=128M Memory(Fast) Ramdrive

Current config Scenario 1

A------>memcpy>------>B Still have to use memcpy to swap out.

Scenario 2

A------>memcpy>------>C Still have to use memcpy to swap out.

If its going to be used at all I dont understand how Scenario 2 is not the way to go.

memory

Anonymous
on
June 2, 2004 - 5:10am

Let's assume your machine has 512Mb ram. With 1Gb swap, if you run out of your 512Mb, you'll have a "flush to disk".

If you allocate 128Mb of RAM as a "swap ramdisk", you now have only 384Mb of usable RAM before you start flushing to ramdisk.

The point is - given that you have the ram, it is far more useful to use it as ram. In your scenario 2 your computer has 640Mb ram total, and you're far better off using it AS RAM.

Cheers,
Wol

Let's think about this a little

on
March 30, 2005 - 5:58pm

"The point is - given that you have the ram, it is far more useful to use it as ram. In your scenario 2 your computer has 640Mb ram total, and you're far better off using it AS RAM."

This is one of those "it seems to be correct, it should be correct" arguments. An "everybody knows this" conclusion. Well, maybe it is not right. It might be wrong, or not completely right.

One good thing about a ramdisk swap is that you can write to it and read from it almost instantly (verses physical disks anyway). So you are not wasting RAM. Everybody is saying we are wasting RAM, but it is not a waste. It is no more wasting RAM than using 20% to 70% of RAM as cache and buffers. Isn't that a waste of RAM? If you run free -t, generally you will see a major part of RAM is in the caches and buffers. It may be justified as not a waste to use up this much expensive RAM as cache and buffers because it MAY save time if the hard drive doesn't really have to be accessed. That argument says a ramdisk swap is also not a waste of memory, because it certainly avoids the need for hard drive access.

So, we should quit thinking a ramdisk swap would waste RAM if we don't also think that 50% or RAM in caches and buffers (causing swapping to hard disk earlier) is not a WASTE OF RAM.

>> So, we should quit thinkin

Predrag (not verified)
on
October 14, 2006 - 7:46am

>> So, we should quit thinking a ramdisk swap would waste RAM if we
>> don't also think that 50% or RAM in caches and buffers (causing
>> swapping to hard disk earlier) is not a WASTE OF RAM.

Agree! Swapping process virtual space fragments an leaving large buffers and cache in RAM can slow down or even crash the whole system down (if swap partition in small).

But using RAM as swap is theoretically incorrect(and waste) and it is just a workaround. Logical solution is to find the way to specify swapping policy (e.g. when to swap, how much buffers/cache to use etc.) and not using swap space to bound buffer/cache size.

Simple proof: Cosider 2 processes A(size is 50% of RAM) and B(swapped out, size is also 50% of RAM), and 50% in buffers. It is slower to swap off A out, swap B in, (possibly) read some userspace data in buffers/cache, copy them to userspace, than swap out B, swap in A etc.
than to work without cache or to work with small cache.

Think about it. Linux crashes sometimes because of swapping. I don't want that to happen. I want "out of memory error" not endless disk job (might damage hdd if left for long period of time)

-> Even better, make an experiment: Measure overall hdd transfer in case of large swapping and without buffer cache. Disk reads/writes are slow no matter is it swapping or ordinary userpace read/write operation, and userspace data must be manipulated at least once, therefore I propose no swapping util RAM is 95% full (and leave only 5% for cache) in the beginning.

Must be directly addressable

Anonymous
on
June 2, 2004 - 2:48pm

The situation that previous posters have been suggesting is more like this:

You have 512MB memory and no on-disk swap space.

Scenario 1: No swap.
Scenario 2: Use 256MB of your RAM like a swap device.

Scenario 2 will treat half of your RAM like a sequential device. That's why you'll have to memcpy data in/out of it. Those memcpy's are unnecessary.

I'm assuming you proposed that the Ramdrive be physically separate device from main memory. Sure, this will be faster than using the hard drive as swap. However, if the RAM drive is just as fast as main memory and is directly addressable, then it would be a bad idea to treat it like a sequential device (i.e. like a swap partition).

Why even compress it?

Anonymous
on
May 29, 2004 - 7:52am

Good point !
Those kernel hackers seem to miss something fundamental: lets imagine that hard disks are as fast as RAM. Then using swap space would be like using additional RAM. Since one of them claim that no matter how much RAM one has, adding SWAP speeds things up, what would he do in situation where difference in speed of RAM nad HD equals 0 !!

BTW it would be nice if my computer had no moving parts at all (they break too often !). For example if HD were replaced by stacked RAM.
Just think how it would alter development of such applications as databases. As i recall from school the developers spend quite a lot of their efforts to work around problems of not random access to files.

oh my ...

Anonymous
on
May 29, 2004 - 9:15am

they actually say that X RAM and Y SWAP is faster than X RAM.
Nobody said it's faster than X RAM AND Y RAM!!!

Re: oh me...

Anonymous
on
May 29, 2004 - 11:29am

did you read those mails ? here I quote one of them:
it is a magical property of swap space, because extra RAM
doesn't allow you to replace unused memory with often used memory.

The theory holds true no matter how much RAM you have. Swap can
improve performance. It can be trivially demonstrated.

so even if I have practicaly unlimited RAM this guy says that
i still need SWAP on HDD...

Yes, we read it, did you?

Anonymous
on
May 29, 2004 - 3:22pm

no matter how much RAM == X
swap == Y

X+Y > X

EOF

Yes, we read it, did you?

Anonymous
on
May 29, 2004 - 4:02pm

X+Y > X this is true for finite sets.
If X is infinite set things are not so simple ;)
as you may think.
(a mathematician should have comment on that !)

This leads to :
Suppose X (RAM) is infinite (practically)
If so please explain:
what is the point of moving data to HDD
if you always have space in RAM ?

Let me understand the reason to do so ?

Yes, we read it, did you?

Anonymous
on
May 29, 2004 - 4:30pm

I am no mathematician, but IIRC if X or Y are infinite cardinal numbers X+Y = max(X,Y) so X+Y isn't always > X


If RAM is infinite there should be no point in moving data to the HDD. At least assuming the size of the data to load is less than or equal to the size of RAM (the size of the data to load could be infinite, but its cardinality should not be greater than the cardinality of RAM).



Of course, this is assuming the number of data sets (e.g. programs) to load is finite. If you want to load an infinite number of infinite data sets the size of the
memory should be an even larger infinite.


Things can get even more complicated, I think, but don't trust me. I'm no mathematician.

Re

Anonymous
on
May 29, 2004 - 5:12pm

Well explained I think, thank you :)

Since I use my system for usual things like
developing software or browsing web,
I do not have to deal with infinite amounts of
data.

Given this I believe that the more RAM
I put into my system the less SWAP I need.
And at some point SWAP might be totaly
eliminated.

This is true for most of regular systems, I guess...

Actually, no. The more RAM yo

Anonymous
on
June 17, 2004 - 4:44pm

Actually, no. The more RAM you have the more swap you need. If you want to have a maximum performance gain of the extra memory you added.
I do not understand why these things are so hard to get:) More memory means more performance, RAM is the best. But sometimes you need swap, so you can use more RAM for speeding up things. You can also buy more RAM for speeding up things. But it things will be even faster if you have swap to go with your new RAM.
Swap is just a free extra memory. So why not use it. It only is slow in case the VM was wrong. Cases of this can be fixed.

RE: Yes, we read it, did you?

Anonymous
on
May 29, 2004 - 4:21pm

What if HDDs are replaced by devices filled with RAM (I think it
is only a matter of time -- 15 to 20 years, its only a matter of price for RAM). If those devices will perform as fast as RAM, the distinction between RAM and HDD
will be blurred.
This equals to situation of system that has plenty of RAM and no SWAP (and on HDD in fact).

Should I have SWAP on such system ?

RE: Yes, we read it, did you?

Anonymous
on
May 30, 2004 - 4:21am

> What if HDDs are replaced by devices filled with RAM (I think it
> is only a matter of time -- 15 to 20 years, its only a matter of
> price for RAM).

People have been saying this for quite some years already.

It was a wet dream when we had 1 MB of physical RAM and 40 MB
harddisks.

There are a number of things you aren't taking into account.
Many of them have to do with the physical characteristics of
RAM, and others have to do with how markets work -- what it is
that makes prices low.

But, to address your point, HDDs *are* replaced by devices
filled with RAM, and have been for over a decade. They are
called "solid state disks". Two major problems are that these
devices are *extremely* expensive, and that they store less
data per physical volume. The reason for the cost is not just
that RAM is 300 times more expensive per GB than a harddisk.
It is also that RAM is stateless. If you turn off the power,
your data is lost, so these SSDs have to include some battery
backup.

You can also try to take your 1 GB DIMMs and stuff them in the
space of a 3.5 inch harddrive, and see how much storage space
you'll get. Sure, the actual chips are much smaller than your
DIMMS, but you need efficient cooling of them, which is one of
the reasons why the packaging is so large.

So what about flash RAM? Flash RAM preserves state, and seems
to follow a similar price curve to that of RAM. Sorry to
disappoint you, but flash RAM has all the disadvantages of
harddisks in terms of performance, and worse disadvantages than
RAM in terms of price. But yes, you can fit flash RAM into
smaller space than DIMMs.

Two historical data points:

In 1981, 256 MB of 128 KB memory modules would have cost
USD 200,000. 256 MB from 20-MB harddisks would have cost
USD 2,500. That is a price factor of RAM/HDD = 80.

Today, a 512 MB of PC2100 DDR RAM costs about the same as a
200 GB 7200 RPM disk. That is a price factor of RAM/HDD = 400.

This is also typical of the development trend for memory
densities. RAM has followed a slower curve than that of harddisks.

So if you think that HDDs will be replaced by RAM-filled devices,
even within 15-20 years, I think you'll be sorely disappointed.
This can happen if it is impossible to make denser harddrives,
while it will be possible to make denser RAM. That may be true,
but it seems doubtful.

However, in 15-20 years, we most likely won't have an exponential
increase in densities for RAM and harddrives anymore, and other
technological improvements may have become reality, slowly
substituting the kinds of RAM and harddrives we have today. Some
of those touted as possible replacements are holographic storage,
thin film electronics, bioware, etc. Time will show.

so even if I have practicaly

Anonymous
on
May 30, 2004 - 3:11am

so even if I have practicaly unlimited RAM

Nobody have unlimited RAM.

this guy says that i still need SWAP on HDD...

If you have more RAM than you could ever use, the swap is not going to be used. So the swap will have no influence on speed in either direction. That is of course only until you start using all your RAM, which you will eventually.

The OS Assumes Unlimited RAM

Anonymous
on
September 7, 2004 - 3:16pm

I think he is saying that the OS will continue to use up all space it can get it's hands on. So, unless you actually have unlimited space, more space will always improve performance.

Re: oh my ...

Anonymous
on
May 29, 2004 - 11:44am

hey actually say that X RAM and Y SWAP is faster than X RAM.
Nobody said it's faster than X RAM AND Y RAM!!!

In situation where RAM can be considered (from practical point of view)
as an infinite resource I believe this does not hold true.

Its hard for me to believe that adding medium with substantially slower performance to fast medium that is (practically) unlimited can speed things up :).

I do not think someone has pr

Anonymous
on
June 17, 2004 - 4:54pm

I do not think someone has practical unlimited RAM. So why discuss it?

Almost all systems have more disc space than RAM space. It makes sense to cache your disc space in RAM, it speeds up things. So your RAM gets full. Now If you have swap you can use it to store some less needed info and continue by using your RAM for nice things. All for optimal performance.

Disc space is currently the thing that can be considered as infinate. not RAM. And even if you have unlimited RAM, having swap shouldn't hurt performance, as it will never be used.

Well, Swap in RAM is faster than Swap on Hard drive

Anonymous
on
September 20, 2004 - 11:46am

" they actually say that X RAM and Y SWAP is faster than X RAM.
Nobody said it's faster than X RAM AND Y RAM!!!"

Nobody said it because X RAM AND Y SWAP(RAM) is faster than X RAM and Y SWAP(harddrive). That can be trivially demonstrated. It only takes a thought experiment. A Ramdisk is at least 100 times faster than a hard drive.

of course not !!

Anonymous
on
May 29, 2004 - 9:11am

1 GB or RAM is always better than 512 MB of RAM .... 1 GB RAM and 512 MB swap is better than 512 MB of RAM and 512 MB swap.

So the question is: is 1 GB RAM better than 1GB RAM *AND* 512MB swap ?

What makes you claim this, wi

Anonymous
on
May 30, 2004 - 3:00am

What makes you claim this, without benchmarks to back you up?

I know enough about how it works to predict the outcome. But OK, I did a small benchmark just to get an idea of the difference. I don't have that much RAM, so here are my results from a system with 256MB RAM. I wrote a program that would fill a 191MB array with pseudorandom integers and sort them through a call of qsort.

First I disabled swap and run the program a few times with just physical RAM:


[kasperd@hactar:pts/2:~/c/swaptest] time ./a.out

real 0m30.175s
user 0m30.020s
sys 0m0.080s
[kasperd@hactar:pts/2:~/c/swaptest] time ./a.out

real 0m30.185s
user 0m29.970s
sys 0m0.140s
[kasperd@hactar:pts/2:~/c/swaptest]

Afterwards I allocated 128MB of RAM and used it as swap. So now I have 128MB of RAM and 128MB of swap in RAM:


[kasperd@hactar:pts/2:~/c/swaptest] time ./a.out

real 0m36.430s
user 0m29.730s
sys 0m2.060s
[kasperd@hactar:pts/2:~/c/swaptest] time ./a.out

real 0m36.478s
user 0m29.790s
sys 0m2.090s
[kasperd@hactar:pts/2:~/c/swaptest]

And it shows exactly what I new would happen. The slowdown is about 17%. And we see that one third of the extra time this process use in kernel code copying data between RAM and swap. The remaining two thirds appears to be used by kswapd.

Couldn't 1GB of RAM be equivalent to 512MB + 512MB swap?

No 1GB of RAM is much better than 512MB RAM + 512MB swap. And 1GB of RAM + 512MB swap is a litle better than just 1GB of RAM.

Maybe this really is the way to go.

No way. Anybody who knows how the kernel works could come up with something better.

What I find

Anonymous
on
May 30, 2004 - 2:55pm

For < 512MB i typically find that 1.5x physical RAM gives optimal swap, for > 512mb 0.5x physical RAM.

Also, a lot of people underlook the speed gain of having your swapfile on a seperate physical drive on its own. Since then all the heads can be moving swap data around instead of only 1/2 of them to keep OS,Apps etc happy

>No one has answered the orig

on
May 30, 2004 - 4:47pm

>No one has answered the original
>question: Couldn't 1GB of RAM be
>equivalent to 512MB + 512MB swap?

I definitely guess having 1G of RAM and no swap is better than 512M RAM and 512M swap. You have the same amount of virtual memory (you can't page something out of swap further, right? so you're constrained by its capacity anyway), but in the all RAM case it all is full-speed.

>I'd like to see some benchmarks
>with 1GB RAM total and a 512MB
>ramdisk swap space, **uncompressed**.
>Maybe this really is the way to go.

I guess all this is insane. What good would it be to reserve half of your RAM for "paging out" areas of the other half, if it gets full? This essentially means that you degrade half of your RAM to a second-class storage. Why not just use all your ram as first-class? When that gets full, that means you couldn't page out more onto the RAM disk anyway, since it would already be full also.

Swap is a better-than-nothing solution for the situation where you run out of RAM, yet you need to allocate more memory. If you reserve half of your RAM for a RAM disk, then basically you make this situation happen way earlier. (Maybe you wouldn't even get to this point at all, having all your RAM available as such.)

I guess what those guys are talking about is that with 1G of RAM and no swap at all, you're not using your resources efficiently. With replacing your former 512M of swap space with RAM is indeed an improvement, but by disabling swap altogether, you essentially force all the address space of all the processes to be kept in RAM, even if lots of it aren't used for days. This limits how much active RAM you can have, compared to what you could have, with 1G RAM in mind (as opposed to comparing to the original 512M RAM in mind). So, by enabling swap in addition to your 1G RAM, you essentially make it possible to page out unaccessed areas, and thus you have more RAM left for active usage. This indeed enables the risk that when something is accessed that has been paged out, the operation will have way more latency - but overall, your system will operate better, because you have more RAM for active usage, like e.g. caching frequented disk areas. In other words, if you re-enable swap, you're not "back in swapping hell as before", but you allow your system to be even more efficient. You shouldn't overlook that.

I have to add that with the above I suppose an actually clever swapping policy, which won't page areas out until there's no free RAM left. In other words, it only pages out inactive RAM areas when it can save more disk usage by the bought in cache than the swapping cost. If this assumption isn't satisfied, enabling swap in addition to your doubled RAM may indeed degrade performance.

Now, where I guess the confusion comes from. Someone in the above lkml thread has written this answer:

>> Even for systems that don't *need* the
>> extra memory space, swap can actually
>> provide performance improvements by
>> allowing unused memory to be replaced
>> with often-used memory.
>
>That's true, but it's not a magical property
>of swap space - extra physical RAM would
>do more or less the same thing.

This suggests that adding RAM to replace swap is the way to go. This approach just doesn't consider that if you're adding more RAM anyway, having swap not replaced, but left there would increase overall efficiency even more.

A reply to the above said:

> Well it is a magical property of swap space,
> because extra RAM doesn't allow you to
> replace unused memory with often used memory.

This approach is also flawed, since it fails to realize that extra RAM is not meant to allow for "replace unused memory with often used memory", but simply to make it not required at all (by simply providing new capacity for that often used memory).

(Of course, this is only true at the point where the less RAM + swap system would start swapping; in the extended system, the replace operation would become required at the point where the original system would already fail by running out of virtual memory.)

This means that the mentioned property of swap is indeed not magical, because extra RAM instead makes the same thing possible much more easier (just allocate, instead of replace).

The bottom line: only those should add more RAM and disable swap who prefer their system to not allow them to start as many programs in parallel so that it's absolutely necessary to free up RAM by paging out memory areas. This is a very real restriction, but it indeed does prevent getting to the point where the system slows down considerably (because of swapping).

mortee

PS.: sorry for the long and combined post

Huh?!! if you have 512mb

Anonymous
on
May 31, 2004 - 8:36am

Huh?!!

if you have 512mb ram + 512mb ram (used as swap) .. you limit yourself to 512 mb of working set.. which is way worse than having 1gb working set..

this boils down to comparing how fast is a 1gb ram + 1gb hdisk swap to a 512 mb ram with 512mb hd swap..

You should only see speedup if your working set is bigger than 512 mbs..

Patented?

Anonymous
on
May 28, 2004 - 10:38pm

Doesn't Ramdoubler have a patent on this?

I know this is what ramdoubler does, but I don't know why noone else does this.

ramdoubler

Anonymous
on
May 29, 2004 - 4:05am

i would like to add that ramdoubler is very fast. I used it a lot in the past, it rarely ever swap and made the OS more responsive, and it even looked like I had more memory. Very good software

ramdoubler on the Mac?

Anonymous
on
May 29, 2004 - 7:08am

If we're comparing to the ramdoubler of old from the Mac, then that's hardly a valid comparison. AFAIK ramdoubler on the Mac increased the performance of the Mac VM system mainly because:
1. MacOS was (is) cooperatively scheduled, and there could be no yielding of the CPU upon a page fault. What this means is that the CPU is entirely lost to the task at hand for the entire wall-clock duration of fetching the faulted page to memory on a page-in.
2. There were some spectacular implementation issues with MacOS VM. At one point (7.5.1 perhaps?) IIRC there was mention in release notes of fixing a bug that resulted in writing the same page seven times to disk upon eviction.

So, my theory on ramdoubler was that by increasing the effective in-memory working set, it was able to reduce the average VM page-in time by leaps and bounds. This would have resulted in a massive increase in how much effective CPU was available to the system.
I suspect that it also wrote compressed pages to swap, which would have resulted in lower IO bandwidth use (especially IIRC above), and a somewhat reduced time to fetch the same into memory on page-in.

Stupid developerssssss!!!

Anonymous
on
May 29, 2004 - 2:29am

I want a cheap supercomputerserver of 64 bits:

Opteron-144 with 4 GiB of RAM ECC (4x1GiB) and 80 GiB of swap (RAMx20) ATA133.

Is ready the kswap of x86-64's long-mode?

No, kswap is for 32 bits :( (upto 2 GiB per process), i'm waiting for 64 bits (upto more than 4 GiB per process).

open4free ©

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.