2

My RAM has a pathetic 2GB and most of my applications and background services take up at least 25% to 35% of it and thus causing the game to be laggy and all.

I've tried adding virtual memory, from 4GB to 8GB... still no help, and even 11GB, but it's not even helping, the game still lags.

I also don't understand, why can't we use our HDD space as RAM? Increasing virtual memory to 11GB don't even help at all, probably same as increasing to 100GB or the whole drive space.

closed as unclear what you're asking by Dave, a CVn, Moses, Shekhar, Mokubai Dec 17 '13 at 22:15

Please clarify your specific problem or add additional details to highlight exactly what you need. As it's currently written, it’s hard to tell exactly what you're asking. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

  • I believe there's something called Task Manager... – MegaRodeon Dec 17 '13 at 11:30
  • yes, there is, but your OP doesn't state that's how you know (it could have been Out Of Memory Excpetion messages for example), so -1... Plus considering all of your questions are in the minus figures, I'd suggest not being sarcastic and realise that the fault is with you! – Dave Dec 17 '13 at 11:38
  • 1
    Also, there are IO overheads when writing to and from HDD. Did you do any research yourself? Are you sure the fault isn't with CPU? What does Task Manager suggest the CPU is doing during this laggy period? And is the graphic driver suitable? Are all chipset drivers updated? – Dave Dec 17 '13 at 11:39
  • 1
    You do understand that the application is very likely because it requires more then 2Gb right? Windows will automatically free up what memory it can, using the virtual memory for the applications running in the background or that have been suspended, your active program uses your actual memory for perofmrnace reasons. – Ramhound Dec 17 '13 at 11:44
  • 4
    My HDD is reading at most 120 MB/s, while RAM reaches 20000 MB/s. That's why we can't use HDD space as RAM. – gronostaj Dec 17 '13 at 12:21
5

Imagine you are a student in a classroom. You are working on an assignment and you don't have your textbook. You can not solve the question and you need to ask someone. Luckily you find some information about the calculations on the board, however what's written on the board doesn't help you. Then you remember that the assistant's room is next to the classroom you are in. You leave the classroom, walk a few meters and there she is. You ask her about the problem but unfortunately she couldn't answer your question. Then you decide to ask the lecturer himself. But you have to go upstairs this time. Okay, no problem. You went there, asked him about the problem. I know it's hard to believe, but he is also unable to answer your question because he somehow forgot the relevant part to your question. He immediately asks another assistant of his to go check library for the relevant textbook. The downside is library is 5-minute walking distance away. The assistant goes to the library, searches for the book and fetches it, finally. There your answer is! Now you go back to your classroom and carry on with the homework.

Now you are the CPU. You carry out operations of any sort (arithmetic: multiplication, addition, subtraction, division OR logic: or, and, xor, etc.). You need some data to work on, so you go check the L1 cache first(board). You could access the L1 cache very fast, simply by holding your head up and looking at the board. Well, you reach fast, but it contains little amounts of data. If the data you're looking for is not there, you go to L2 cache, the assistant. It takes longer time, but she has larger data to offer you. If you're out of luck, you have to go to RAM, the lecturer. Come on we are all human, we forget things. Sometimes lecturer forgets too! If you're having a bad day, like rainy clouds above your head, he has forgotten the data you will ask for. That time, he has to go check the library (Hard Disk, or let's say Virtual Memory) which has a VERY large space compared to board(L1), assistant(L2) and even lecturer(RAM). But there is a crucial downside, you have to walk there for minutes! A back and forth trip takes 10 minutes, add the textbook lookup as 2 minutes there you have it! To get any data from library takes 12 minutes while asking the lecturer would take 1-2 minutes.

Memory is a delicate part of your computer system. To store larger data, they have to be slower. The CPU operates at very high speeds (2-4 GHz) compared to other devices. A RAM module runs in 1-2 GHz speed. The hard disk is even WAY MORE slower. The cache memories are in the CPU die. Therefore CPU doesn't have to slow down to access the cache memories. But when the required data resides in the RAM, CPU have to wait for the buses which connect CPU and RAM to get the data from the ram. Getting data from hard disk even takes MORE time. Well, this was a very simple version of what happens. Actually, there are more going on (more levels of cache memory, memory access times, cache miss/hit, architectural differences: Intel vs AMD, bus speeds, instruction architecture and so on). For further reading, Hardware Secrets has nice tutorials explaining all these things.

An Intel CPU architecture: enter image description here


AMD architecture: enter image description here

The south bridge (which is slower than the north bridge which connects faster components like video card) is responsible for communication of peripherals such as USB, hard disk, ethernet and such.

This is the reason. Your game requires large amounts of memory and you provide a larger library to your system, but you have to walk there to get the information. Therefore the amount of virtual memory you provide doesn't really matter when it comes to speed. You need more RAM to overcome the bottleneck caused by low RAM.

4

The hard disk paging virtual memory is rather slow, and paging in and out has a lot of overhead (IMO). While having some "virtual" spaces for the uneeded and unnessisary items to be paged out to disk, the system is still in control of what gets paged.

If your game needs more ram than is made available, paging parts of that programs data out to disk, really is not that much faster than getting them from disk to being with, or re-getting them from disk when they are rolled out of memory completly.

Things that may help:
1) Get more ram (ok it had to be said) Win7 64bit wants to have ~4Gig.

2) Shut things off, go through and carefully disable unneeded services, and programs that are not in use. (even drivers that are unneeded for that last bit). Ex: Disable superfetch, I cant see that helping at all in this situation, it loads the ram with stuff you may use later.
Must have a Backup of the system to be messing with these things

3) Use RAMMAP and "JAM" stuff out of ram, While most of it will head right back in again, especially when needed, you can flush even working sets out, and free up some memory temporarily. This will also force some (other) working stuff out to paging, making them slower, but out of your games way.

4) Use a SSD for paging, while it might not be good for the drive it should speed up the paging action itself by measures. Still wont cut it.

5) Flat out task end things via a batch or manually, before running the game. Crasy people (like me) would even end the explorer temporarily to play a game, and restart it on game exit (batch or using the task manager) when on a very low ram system.

6) Turn off windows programs in "programs and features" / "turn windows feature on and off". While few of these items in the components section will take memory when not active, some of them do. Turn off only the ones you never intend to use.

7) A few games allowed for changes that use much more memory right in the settings, sometimes those changes are in a config file for the game, and listed on the web somewhere. Switching from high-res textures to low-res textures could (have not tested this well) free up not only video texture memory, but system memory moving and storing them before heading there.

8) Shrink things, getting desperate there are sometimes ways to shrink the components of a game, drop Bits (24-16bit) Crunch audio, squish movies. Most of these are in some form of compressed format, but there are ways to get it out, squish it down, and put it back where it was.
Disclaimer2: altering game parts may set off the "cheat buster" things when playing online.

9) Defrag, not just defrag but defrag & reorder. When you must depend on the disk a lot, having the data your moving in and out sequential and closer together can help some. if the disk is a mess it can help lots.

10) Have the paging and/or the game parts and pieces on the faster disk places, and split between 2 disks if possible. If your game data is on one disk (seperate hardware item) and your paging location is on a different disk item, it will slightly improve your I/O for both tasks, each having thier own (slow) parellel activity going on with less conflict of writing while reading.

Not the answer you're looking for? Browse other questions tagged or ask your own question.