Add up the memory usage of every process in Task Manager...

archcommus

Diamond Member
Sep 14, 2003
8,115
0
76
...and see if it adds up to total memory used in the Performance tab. Is it the same amount? Mine isn't anywhere close. Add up all the memory usages, 140 MB. But the difference between available memory and total memory in the Performance tab? 312 MB.

Why is this? Are there really that many processes that aren't even listed in Task Manager? Can I assume that the OS itself is taking up the remainder of the amount?
 

SrGuapo

Golden Member
Nov 27, 2004
1,035
0
0
Mine isn't anywhere near either. Added up processes come to ~148MB. Total used in performance is 392MB... I assume tyhat the rest is just the OS, but I have no idea...
 

archcommus

Diamond Member
Sep 14, 2003
8,115
0
76
To me, it just seems odd that I only have PG2, Kaspersky, and Sygate on startup, yet 312 MB of memory is already being used. On my girlfriend's XP system, she only has 128 MB of memory, and about 30 MB is free on startup, and that's with AVG already loaded. So why would Windows decide to take up so much more memory on my system? Just because it can?
 

Lonyo

Lifer
Aug 10, 2002
21,938
6
81
Originally posted by: archcommus
Originally posted by: Phil
One word: cache.
Explain. This is something that is like this even since the first boot-up of Windows.

Icons, probably code and stuff you don't know about, there are loads of things that can be cached even at the start of bootup.
 

archcommus

Diamond Member
Sep 14, 2003
8,115
0
76
Simply put, Windows seems to use as much memory as it likes, based on how much is available. On my girlfriend's 128 MB system it only uses about 90 MB. Does it have features turned off that I have turned on? No. Does it have the appearance on Classic style? No. Exactly the same. Yet on my 1 gig system, it uses about 200 MB at bootup.
 

glugglug

Diamond Member
Jun 9, 2002
5,340
1
81
Memory Usage column in task manager does not include stuff that is swapped out to disk. VM Size column and the graph on the performance tab both do. If you want to know how much a program is allocating, look at VM Size, not Memory Usage. There may be extra included there from memory mapped files, but usually not much.
 

archcommus

Diamond Member
Sep 14, 2003
8,115
0
76
So is the total a program is using what you see in the VM size column, or the VM Size column and the Memory Usage columns added together?

Well, here's what I'm looking at. I have a gig of RAM in my system. On bootup, I have about 720 MB available, that is with Kaspersky, PeerGuardian2, and Sygate running. Let's say I open eMule, Trillian, and Sharaza. Then I'll be down to around 670 MB available or so. When I go to sleep and check it in the morning, I only have about 200 MB available. Of course a restart will fix it, but why does it get so low overnight? I read in another thread that a low available amount isn't always an issue, because some of that amount being used is actually just cache, and will be freed instantly when another program needs it. Is this true?

My total kernel memory is 111 MB. Is this the true amount the OS is using or not exactly?

My total Commit Charge is 348 MB. Is this the TRUE amount that my open programs are using or something else entirely?

And finally, the last question, if no programs are set to start on bootup at all, why would 800 MB out of 1 gig be available on my system at bootup, yet 50 MB out of 128 be available on my girlfriend's system? I'm still not understanding that.
 

imported_michaelpatrick33

Platinum Member
Jun 19, 2004
2,364
0
0
Look at the performance difference between your two systems. Her system is using way more swap file thrashing to accomplish the same thing as your system in memory. Trying open a few programs and doing anything and watch the hourglass appear on her system while yours breezes through.

Since there is more physical memory for allocation, Windows is dynamically allocating it to cache and it is also allowing programs and background services to utilize the memory that, on your girlfriend's computer, is sitting in the virtual memory (which is way slower than main memory).

You have 128 megs of memory and 300megs of applications/services/cache but still need free memory for applications the user will open; how do you allocate it. It is called virtual memory and slower computer. So you only have 90megs of used memory but 210 megs of virtual memory (slow) being utilized.

You have 512 megs of memory and 300 megs of applications/services/cache but still need free memory for applications the user will open; how do you allocate. Use 250-300 megs of memory for all the applications/services/cache and have much faster performance because you still have 200megs free for applications to use dynamically.

Edit: Windows must make sure some memory is free for applications because the Processor schedule is set to program priority by default so it dynamically places application (that start on startup)/services/cache into swap file (hard drive virtual memory holder) because your girlfriend's computer has less memory then appication/services/cache requires. Her virtual memory usage will be way higher than yours (if you have equal application/service/cache settings of course.
 

archcommus

Diamond Member
Sep 14, 2003
8,115
0
76
Originally posted by: michaelpatrick33
Look at the performance difference between your two systems. Her system is using way more swap file thrashing to accomplish the same thing as your system in memory. Trying open a few programs and doing anything and watch the hourglass appear on her system while yours breezes through.

Since there is more physical memory for allocation, Windows is dynamically allocating it to cache and it is also allowing programs and background services to utilize the memory that, on your girlfriend's computer, is sitting in the virtual memory (which is way slower than main memory).

You have 128 megs of memory and 300megs of applications/services/cache but still need free memory for applications the user will open; how do you allocate it. It is called virtual memory and slower computer. So you only have 90megs of used memory but 210 megs of virtual memory (slow) being utilized.

You have 512 megs of memory and 300 megs of applications/services/cache but still need free memory for applications the user will open; how do you allocate. Use 250-300 megs of memory for all the applications/services/cache and have much faster performance because you still have 200megs free for applications to use dynamically.

Edit: Windows must make sure some memory is free for applications because the Processor schedule is set to program priority by default so it dynamically places application (that start on startup)/services/cache into swap file (hard drive virtual memory holder) because your girlfriend's computer has less memory then appication/services/cache requires. Her virtual memory usage will be way higher than yours (if you have equal application/service/cache settings of course.
This makes sense, thanks. So basically, Windows NEEDS to leave at least some memory open, say 30 MB, so a lot of the services that get loaded into physical RAM on my system, get loaded into the pagefile for hers. So it appears that Windows is using less memory, but it's not, it's just paging more. And that's one of the reasons why her system is so slow, because more stuff is being paged. Makes sense.

So now, what about my issue with going to bed with 670 MB available and waking up to 200 MB available? Is it only because so much is being cached, and thus it's not really an issue? Or am I experiencing some sort of memory leak?

And is my total commit charge the TRUE total memory being used by all open programs or something different?
 

glugglug

Diamond Member
Jun 9, 2002
5,340
1
81
There are also probably larger blocks of memory on your system reserved for I/O buffering, particularly look at your AGP aperture size setting in your BIOS.
 

imported_michaelpatrick33

Platinum Member
Jun 19, 2004
2,364
0
0
A great little program that can help you see your paging file and ram usage (along with neat tweaks) is the Freeware Cacheman XP program

If you went from 600 to 200 megs free it sounds like Windows has reallocated free memory from former application use back into the system cache pool.

For example, before bed you were playing a game or something that required a lot of ram and Windows gave up the memory from cache for the application. After you turned off the game it showed 600 megs free (the application returns the memory to free memory pool). After a certain amount of idle time Windows reallocates the free ram back to the system cache or other processes and will dynamically free the ram the next time you start the program.

What is the size of your system cache file? Usually Windows will take up most of the free ram for caching.
 

The J

Senior member
Aug 30, 2004
755
0
76
From my understanding, the Processes tab of the Task Manager includes the Working Set when calculating the amount of memory being used. When memory pages are allocated to a program, that program is given more memory that it is actually using. That's the Working Set. For example, Opera on my system shows about 40MB being used. It may not actually be using all of that memory, but it is given that much so that more memory doesn't have to be reallocated when the program needs more (until it needs more than 40MB). There are external process managers you can use that will show how much the program is actually using.

Like I said, the above of from what I understand. If I'm wrong, then hopefully someone can correct me.
 

archcommus

Diamond Member
Sep 14, 2003
8,115
0
76
But the amount you see next to available memory, is that the TRUE amount that is available? Or is a lot of the used memory just to cache things, so really you have more than that available?

And is the commit charge the total true amount being used?

michaelpatrick33, what you say about it caching some stuff in memory overnight makes sense. When my available memory is that low, my system cache shows over 700 MB in Task Manager.
 

imported_michaelpatrick33

Platinum Member
Jun 19, 2004
2,364
0
0
Look at your Physical Memory (K) in the Performance Tab of Windows Task Manager

Here is mine: Total 1,572,340 (1.5 Gig)
Available 944,088 (988megs)
System Cache 1,064,456 (1.06 Gigs)

This means 560 megs or so is being utilized by applications/services programs/cache etc. I add up my task manager by look and it is around 440 or so. My cache file is currently 118megs which I got from CachemanXP.

This adds up to around 560 megs. Which is the difference between total and available. Add 560 and 944 and get around 1500 (1.5). The system cache is set at 1 gig but actual may vary depending on manual cache control or settings due to usage.

The Available is what is free right now for application usage. Your girlfriend only has 128 and is running windows so obviously the available memory could theoretically increase but more likely the virtual memory would be utilized for large memory programs. Usually for normal usage 1gig is the sweet spot. I have 1.5 because I got a great deal on low latency 1gig dimms and am building an X2 AMD64 system in a few months for Autocad, photoshop, web building etc.
 

Concillian

Diamond Member
May 26, 2004
3,751
8
81
Originally posted by: archcommus
Simply put, Windows seems to use as much memory as it likes, based on how much is available. On my girlfriend's 128 MB system it only uses about 90 MB. Does it have features turned off that I have turned on? No. Does it have the appearance on Classic style? No. Exactly the same. Yet on my 1 gig system, it uses about 200 MB at bootup.

Take note of how much disk access has on boot. Also, compare how much time passes on your system between the log in screen and when the system is usable with how much time the same thing takes on your computer. This has a LOT to do with the amount of RAM you have.

You probably have significantly faster access to different fonts than she does. Sounds like nothing, but fonts are used EVERYWHERE. Windows will cache them in memory if it can.
 

archcommus

Diamond Member
Sep 14, 2003
8,115
0
76
Well I now understand the available memory on bootup thing. Windows is simply using more pagefile on my girlfriend's system, and thus it takes up less physical RAM. But of course, pagefile and physical memory combined, the OS should be taking up the same amount on most systems.

michaelpatrick, I understand your situation and explanation of it, but how does the system cache figure from Task Manager tie into it? You said your cache is around 118 megs, so what is that 1.06 GB figure from TM?

I added up the ENTIRE VM column as well as the entire mem usage column, and then added my cache amount to it from Cacheman. It came to 700 some MB, yet I have 400 some free out of 1 gig. Why is this?

The underlying concern is this: can I be positive that my low available memory after running overnight is from caching and nothing else? And do I not have to restart to bring that number up since it will free itself automatically when programs need it? It's just when I see only 300 megs available out of 1 gig total, it makes me want to close everything and restart to bring it up.