Linked by Thom Holwerda on Sun 31st Aug 2008 16:15 UTC, submitted by cy
BeOS & Derivatives Thanks to Google Summer of Code student Zhao Shuai, Haiku now has support for a swap file. "As of revision 27233 it is enabled by default, using a swap file twice the size of the accessible RAM. The swap file size can be changed (or swap support disabled) via the VirtualMemory preferences. Swap support finally allows building Haiku in Haiku on a box with less than about 800 MB RAM, as long as as the swap file is large enough. [Ingo Weinhold] tested this on a Core 2 Duo 2.2 GHz with 256 MB RAM (artificially limited) and a 1.5 GB swap file. Building a standard Haiku image with two jam jobs (jam -j2) took about 34 minutes. This isn't particularly fast, but Haiku is not well optimized yet." The swap implementation borrows heavily from that of FreeBSD.
Thread beginning with comment 328711
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE: Swap twice the RAM
by FooBarWidget on Sun 31st Aug 2008 18:34 UTC in reply to "Swap twice the RAM"
FooBarWidget
Member since:
2005-11-11

Yes, I don't understand why people still stick to it. I have 2 GB of RAM and I have no swap, and everything works fine. It would be insane to allocate 4 GB of swap for my system.

Reply Parent Bookmark Score: 4

RE[2]: Swap twice the RAM
by sgibofh on Sun 31st Aug 2008 18:56 in reply to "RE: Swap twice the RAM"
sgibofh Member since:
2007-03-31

it depends on what happens if the system crashes. some OS still dump the whole OS completely in SWAP before dying since you don't want it saved as a regular file on the filesystem.

When rebooting, the dump in swap is then saved into a regular file.

basically swap = 2xRAM is a bad idea, but there are sometimes reaons why it's space is needed. Don't know how HAIKU does this though.

Reply Parent Bookmark Score: 1

RE[3]: Swap twice the RAM
by Doca on Mon 1st Sep 2008 04:46 in reply to "RE[2]: Swap twice the RAM"
Doca Member since:
2006-01-30

it depends on what happens if the system crashes. some OS still dump the whole OS completely in SWAP before dying since you don't want it saved as a regular file on the filesystem. When rebooting, the dump in swap is then saved into a regular file.


It's important to explain why "some OS" on the event of a crash dumps the whole system memory over the paging file: because it's pre-allocated and, at some point, reliable (ie: safe to write to).

There could never be something unexplained or uncotrolled at kernel space. If something odd happened at kernel space, it (the kernel) can only be trusted to a minimum, so trusting it to allocate another file could be disastrous and render the whole system corrupt or unusable, so this design of using a pre-allocated file would be the safest.

Back to the matter at hand, the fixed value of twice the RAM is completely out of parameter, but you have to start somewhere, so it's understandable.

I would choose no hard disk paging, ever, for a few reasons: it's simpler (and simpler is always good) and you got the "how much RAM you have is exactly how much you can expect to load on your system" approach (a lot easier for everyone: users, developers, admins, ...).

I have an idea: use disk paging only after the system generated a baseline on how a particular system behaves. I think it's the smartest way to do that.

Reply Parent Bookmark Score: 3

RE[2]: Swap twice the RAM
by fernandotcl on Sun 31st Aug 2008 19:05 in reply to "RE: Swap twice the RAM"
fernandotcl Member since:
2007-08-12

There's no rule of thumb, it always depends on what you're running. However, Haiku needs a default. For a work-in-progress operating system, I consider that default more than appropriate.

And it's not like you can't change it easily. It's a swap file, not a swap partition.

Also, I believe a big chunk of the Haiku community uses Haiku in more constrained environments. Swap space almost makes no sense for regular utilization when you have 2G of RAM, but you might require twice as much swap space if you have less than 512MB of RAM.

And what's all the fuss about this? If you have 2G of RAM in your machine, you most likely have enough disk space for a big swap file.

Reply Parent Bookmark Score: 4

RE[3]: Swap twice the RAM
by ShadesFox on Mon 1st Sep 2008 01:16 in reply to "RE[2]: Swap twice the RAM"
ShadesFox Member since:
2006-10-01

That's always been my thoughts on the subject. I have 2 gigs of ram and my linux install has a 4 gig swap partition on a 500 gig disk drive. If I ever start pining for those 4 gigs It would probably be time to upgrade to a 20 terabyte disk drive. I still wish more Linux installers would have a 'use swap file' option instead, make things more dynamic.

Edited 2008-09-01 01:17 UTC

Reply Parent Bookmark Score: 1

RE[2]: Swap twice the RAM
by Rugxulo on Sun 31st Aug 2008 19:27 in reply to "RE: Swap twice the RAM"
Rugxulo Member since:
2007-10-09

Yes, I don't understand why people still stick to it. I have 2 GB of RAM and I have no swap, and everything works fine. It would be insane to allocate 4 GB of swap for my system.


Face it, modern OSes need to use lots of RAM, esp. for developers who are rebuilding things like GCC, OpenOffice, etc. Not saying that's typical or ideal, but it can be necessary for some things.

However, does anyone here know if using 2 GB RAM + 4 GB swap is even possible?? I mean, would that even work (on Haiku or any other 32-bit OS)?? Wouldn't it be unavailable at the same time anyways, only letting you use approx. 4 GB (or less) at once?

Reply Parent Bookmark Score: 2

RE[3]: Swap twice the RAM
by FooBarWidget on Sun 31st Aug 2008 19:37 in reply to "RE[2]: Swap twice the RAM"
FooBarWidget Member since:
2005-11-11

Why "face it"? My last system had 1 GB of RAM and it worked fine. My RAM is now doubled, yet my apps haven't become more bloated. If anything, GNOME and KDE have only become less bloated over the years as they kept optimizing things. I compiled GCC 4 years ago on an Athlon 1.4 Ghz with only 380 MB RAM, why wouldn't I be able to do that now with a system that has even more RAM? GCC didn't become *that* much bigger.

If my last system with less resources worked fine, and it only had 1 GB of RAM, then why would I suddenly need to have 4 GB of swap now that I have 2 GB of RAM? Couldn't I just think of the extra GB of RAM that I've gained as the swap?

It seems totally illogical to me. One of the points of upgrading one's RAM is to make sure that the system doesn't need as much swap, so why would one need to upgrade the swap as well after having upgraded the RAM?

Reply Parent Bookmark Score: 2