Question from Daniel G.: Hi Rick. I just noticed something that has me puzzled and I hope you can help me understand how it works.
Last night I downloaded a game and installed it on my computer, and it runs just fine.
The thing that’s puzzling me is the game was a 30GB download but it runs on my computer even though it only has 8GB of RAM.
What trick are they using to shoehorn 30GB of code into 8GB of RAM? Is it compressed somehow?
Rick’s answer: That’s a great question Daniel, and I believe this is the first time anyone has ever asked it in the four years that I’ve been answering questions on this site.
Truth be told, the entire 30GB of data in that download isn’t being shoehorned into your PC’s 8GB of RAM at all. In fact, the game isn’t even using the entire 8GB, just a portion of it.
Every program that’s running on a computer must share the available RAM with all the other programs that are running at the same time, plus the operating system itself.
Your computer’s CPU only loads the parts of a given program into RAM that it needs in order to complete the immediate task at hand.
That will typically include a small portion of the program’s executable code and any supporting files that it will need to complete the current task (graphic files for instance).
When the CPU needs a different portion of the game’s executable code and different supporting files it dumps enough of the current code out of RAM to make room to load the new items that it needs to complete the next task.
Think of it in the context of a plumber completing a plumbing job…
If a plumber is installing a sink he might need a variety of tools (i.e. a hole saw, a pipe wrench, a screwdriver…).
Think of the plumber’s brain as the “CPU” and the tools as the “operating system”.
In addition to the tools he’ll also need some plumbing supplies (i.e. a sink basin, a faucet, pipes and tubing…).
Think of the plumbing supplies as the “program”.
The plumber only has two hands but he’ll have to handle perhaps a dozen items to complete the task of installing the sink.
How does he do that? By picking up and using only the tool(s) and plumbing item(s) he needs to perform the next step of the overall task (a screwdriver and a screw for instance).
When that step is complete he’ll put the screwdriver down and pick up the tool and the part he’ll need to complete the next task.
I know this is a poor analogy but I hope it helps you understand how a computer manages to run multiple large programs at once.
In a nutshell, that’s basically how your computer “shoehorns” that 30GB game into (just a portion) of your system’s 8GB of RAM.
Bonus tip #1: The more RAM your computer has the more “parts” of a large program that it can store in memory at one time. That means adding extra RAM will typically make the program (and the system overall) run faster.
Read this to learn how to speed up your computer by adding more RAM.
Bonus tip #2: Want to make sure you never miss one of my tips? Click here to join my Rick’s Tech Tips Facebook Group!
Want to ask Rick a tech question? Click here and send it in!
If you found this post useful, would you mind helping me out by sharing it? Just click one of the handy social media sharing buttons below.