This shall be a monster if clustered
Printable View
I just don't understand why so many people misuse or misunderstand 'swap'! Or think it's going to solve their lack of physical ram problems...
Ram is so cheap now-a-days (you could buy a couple TBs of it) :thumbup1:
My machine at home only has 4GB of ram, I made the mistake of trying to run all maps at once :thumbup: the comp soon crashed. I try not to go over the 4GB limit now, even though my machine has 10GB of swap but that is just incase it needs to use it for what ever reason. I have pushed into the swap a couple of times when a few people wanted to test various maps at once.
@tarciokk You're best learning how to create a PW server yourself. Right now I am a one man dev team, although I'm not really knowledgeable enough to call myself a dev yet. I've only done the basic so far. If you're going to have people help you dev I would recommend using people you know well.
I currently have a team of people who I've played alongside with for quite some time, some I've known almost 2 years and I know without doubt in my mind I can trust them to the ends of the earth. One of them is even looking after my guild for me while I'm "offline" working on this server.
It is not 'fake memory' what-so-ever:
Basically, swap is a good name for it, because that's exactly what it's doing... It's attempting to take something that's not currently 'pressing' out of ram and placing it into "SWAP" so that ram is clear for something 'pressing'
more specific:
lets say you start up MY server release on a machine with 32GB of ram... you will see that it DOES indeed take up 16GB of ram (all maps no players)... Now, however, CAN you start it on a machine with less -- sure... Because it's taking anything 'not pressing' and tossing it into 'swap'... Then when it needs it again it can grab it out of swap...
Well anywhoot, misusing SWAP is a HORRIBLE thing, because it has NOTHING really to do with physical ram... If you attempt to 'take on too much' thinking making a bigger swap will save you -- you're just screwing yourself more, because what about when -- say there is 16GB worth of 'PRESSING' shit to be in ram, but you only have 8GB (it aint gonna be pretty). Lightest case scenario is you're going to slow down if not freeze up. At a minimum you're going to slow down because now it has to do a LOT more than necessary exchange of info between PHYSICAL ram and SWAP.....
Ok, I'm sure someone could explain it better or more accurate, but then again that's why I posted this: Paging - Wikipedia, the free encyclopedia
One basic rule of thumb is -- NEVER set swap bigger than a 1:1 to your physical ram... IE: if you have 1GB of physical ram -- DO NOT -- set up a swap that's bigger than 1GB... IE: if you have 4GB of PHYSICAL ram -- DO NOT -- set up a swap more than 4GB... if you only have 8GB of ram DO NOT set up swap greater than 8GB...
The other thing is, when you start getting into SERVERS (I mean REAL servers) the ram amounts would probably blow most of your minds, so the other rule of thumb is that swap is 'capped' at about 16GB... before you start to employ other math... So say you had a server with 32GB of ram, well you STILL DO NOT really want a swap bigger than 16GB... Pretty much passed 16GB you want to take (P*.5=s) Physical ram * .5 = swap (or P/2=s Physical ram / 2 = swap)... So say you have a server that has 256GB of ram -- YOU STILL DO NOT WANT any bigger than a 128GB swap... Up in this high of a range I think I would break it down to (P*.25=s) OR (P/4=s) so that a system running 256GB of ram would actually only call for a 64GB swap...
Spoiler:
It's intended use is to put programs that aren't really doing anything at that moment in time into swap IF another application needs more RAM. It then is supposed to be brought out of swap if it gets called upon or has a call scheduled (From a timer or something)
Swap isn't exactly fake memory... You are not supposed to use it like RAM at all...
The main reason behind this is that in order for the CPU to run any code/data that has been put into swap the system must load it back into RAM (CPU can't access secondary storage directly) and possibly put even more of it into swap causing a significant IO delay when doing just about anything with a large amount of swap being used.