Windows 7 ate my memory

Discussion in 'other software & services' started by Gullible Jones, Mar 27, 2014.

Thread Status:
Not open for further replies.
  1. Gullible Jones

    Gullible Jones Registered Member

    Joined:
    May 16, 2013
    Posts:
    1,461
    A spinoff of the services discussion:

    Right now I am on a Windows 7 (32 bit) workstation with 2.6 GB of available physical RAM. According to Process Explorer, the OS is using 1.7 GB of physical RAM.

    Now, I know what you're about to say...

    "It's all filesystem cache!"

    No it isn't. ProcExp specifically lists cache size among the memory stats... And right now that accounts for 35 MB.

    "It's drivers!"

    No it isn't. Kernel and driver working set are also listed, and combined those are less than 5 MB.

    "It's all the stuff you're running!"

    No it isn't. All that adds up to perhaps 300 or 400 MB, definitely not 1.8 GB. As far as I can tell, over a gigabyte of physical RAM is completely unaccounted for.

    "It's why your system is nice and fast."

    No it isn't. The computer performs poorly; there's a lot of stuttering and hesitation whenever a program does something resource intensive. I get smoother multitasking running a full KDE desktop on my EeePC.

    "You need to reboot it."

    No I don't. I booted it up about 30 minutes ago.

    Needless to say I'm interested in what people have to say about this...
     
  2. luciddream

    luciddream Registered Member

    Joined:
    Mar 22, 2007
    Posts:
    2,497
    I won't beat around the bush and mislead you like those other people... try to rationalize it at all. It's because the OS is bloated.

    And the even suckier part is you can't trim hardly any of that stuff back like you could on XP to salvage those resources or it just won't work.

    This is what they call "progress"... enjoy.

    I just booted up my XP Pro box and have 3 GB of my 3.25 free.
     
  3. Spiral123

    Spiral123 Registered Member

    Joined:
    Jan 10, 2007
    Posts:
    128
    do you have dedicated video card RAM?
     
  4. Gullible Jones

    Gullible Jones Registered Member

    Joined:
    May 16, 2013
    Posts:
    1,461
    @luciddream: what I'm wondering is *where* the OS is bloated. If something is using a ton of physical RAM, it should show up in ProcExp.

    BTW I've also noticed this on XP; not to the same extend, but there's usually 100-200 MB of physical RAM unaccounted for in ProcExp and TaskMgr.

    @Spiral123: Good question! But no, it's not shared video RAM; this thing has a nVidia PCIe graphics card. And it's not inaccessible RAM, since that already fails to show up (the computer actually has 4 GB of RAM but only 2.6 are usable).
     
  5. noone_particular

    noone_particular Registered Member

    Joined:
    Aug 8, 2008
    Posts:
    3,798
    I've used Black Viper many times when stripping down XP, but his pages on Win 7 and 8 are eye poppers. That's an insane mess. There's got to be over 100 services on those operating systems, many running by default. What good is more RAM when operating systems consume RAM by the gigabyte with no apparent output? Cars that behaved that way were called gas guzzlers. That 1.7GB usage amazes me. I could fit my entire OS in that and still have enough left over to run it.

    Is there an equivalent to 98lite or XPlite for Win 7 and 8? LitePC doesn't have one.

    edit
    Am I reading your numbers right? Out of a total of 4GB, 2.6 is the total available. Out of that, 0.9 is available to you, barely over 20% of the total RAM?
     
  6. Gullible Jones

    Gullible Jones Registered Member

    Joined:
    May 16, 2013
    Posts:
    1,461
    2.6 GB is available because it's a 32 bit machine. 32 bits can address at most about 3.5 GB of physical RAM, and then you lose some because you have to address video memory too. The video card probably has about 1 GB of internal RAM.

    But yes - less than a third of the physical RAM is available, and AFAICT much less than that is being used for filesystem cache.

    It could be that ProcExp is just lying about the cache use, of course. And the computer is usable at least, so I know it's not thrashing, and must be doing some filesystem caching... But the stuttering and lag under relatively small loads make me wonder, especially as the CPU is a Core 2 Duo.

    Edit: just for comparison, a 1 GB Linux VM running Xfce, a couple terminals, and a Firefox session:

    Code:
    $ free -m
                 total       used       free     shared    buffers     cached
    Mem:          1002        779        223          0          1        545
    -/+ buffers/cache:        231        770
    Swap:            0          0          0
    
    It's using more RAM for filesystem cache than for all running programs. Not trying to troll or anything, but I would say that's much better resource management.
     
    Last edited: Mar 27, 2014
  7. Victek

    Victek Registered Member

    Joined:
    Nov 30, 2007
    Posts:
    5,121
    Location:
    USA
    Having only only 2.6 gigs available on a 4 gig system with a 32 bit OS is unusual. Commonly there's 3.X gigs available with the "lost" ram going toward supporting hardware which cannot use address space above 4 gigs. A possible reason for this is that even though Gullible Jones is using a PCI-e video card with its' own ram it still has to be mapped into the 4 gig address space. In other words the more ram on the video card the less ram is available to the OS. The solution for this is to use a 64 bit OS. Then there's plenty of address space to map video ram, etc, and there's no unusable ram.
     
    Last edited: Mar 27, 2014
  8. Minimalist

    Minimalist Registered Member

    Joined:
    Jan 6, 2014
    Posts:
    5,067
    Do you by any chance use P2P software? I have similar problem with Utorrent when adding large torrents. When client tries to pre-allocate all files it can use all my free memory for filesystem cache (all 8GB). When I checked memory in procexp there was no process listed, that was using all this memory. Only after checking up Resource monitor I found out that the memory was shown as "modified" (filesystem cache). Don't know if you might be using some software that can cause similar problems.

    hqsec
     
  9. Gullible Jones

    Gullible Jones Registered Member

    Joined:
    May 16, 2013
    Posts:
    1,461
    Ahahaha! No. No, I haven't used P2P anything for years.
     
  10. noone_particular

    noone_particular Registered Member

    Joined:
    Aug 8, 2008
    Posts:
    3,798
    That seems to be the new definition of progress, doing less with much more.
    Just for comparison, this is the load on my host system. It's running the Tor exit and VPC. On VPC I'm running XP-Pro SP3 and posting through it using SeaMonkey.
    usage.gif
    Progress definitely has a very twisted definition IMO.

    edit
    256MB of memory is allocated to the virtual XP unit.
     
    Last edited: Mar 27, 2014
  11. noone_particular

    noone_particular Registered Member

    Joined:
    Aug 8, 2008
    Posts:
    3,798
    Perhaps current versions of Windows don't reveal everything they do to apps like Process Explorer any more.
     
  12. WSFuser

    WSFuser Registered Member

    Joined:
    Oct 7, 2004
    Posts:
    10,632
    Although not as extreme as your case, I have confirmed a similar issue on my Windows 8 machine. Process Hacker shows my physical memory usage as 1.8GB however the Working Set usage only adds up to about 1.45GB and the Private Bytes is only about 1.25GB. Sorry I can't actually answer your question.
     
  13. Gullible Jones

    Gullible Jones Registered Member

    Joined:
    May 16, 2013
    Posts:
    1,461
    @noon_particular: Not sure what would be the motivation for that, especially as ProcExp is their own product...

    I feel the same way about "progress" on the desktop though. Had this discussion with another *nix enthusiast last weekend actually; the concensus was that both web and OS developers have become too focused on making things look good, at the expense of making them helpful to users.

    What particularly vexes me is that there are *very* legitimate reasons to use more memory when it's available, e.g.
    - Disk and file encryption
    - Virtualization of all sorts
    - OS security mechanisms
    - Filesystem snapshotting
    and above all else internationalization and localization! Poor support for local language input and output is a terrible problem in desktop computing.

    Edit: @WSFuser, I just had a thought, maybe shared memory is tracked differently in ProcExp? Let me see...

    Edit 2: No, working set includes shared memory. Which means that the total memory usage should be less than the sum of the working set sizes, not more... I'm perplexed.
     
    Last edited: Mar 27, 2014
  14. noone_particular

    noone_particular Registered Member

    Joined:
    Aug 8, 2008
    Posts:
    3,798
    Call it a complete distrust of MS, especially after they admitted accepting "help" from the NSA. I've been suspicious ever since they stopped classic HIPS from hooking the kernel. Take your problem for example. What is loading that system and why is it hidden? On 9X systems, HxD can read the entire memory. Have you tried a tool like it to see if it can even access what's in the unavailable areas?

    Regarding encryption for the disk and file system. I'm using an old encryption app, Scramdisk, which can work with encrypted containers and entire partitions. I used to use it with a Blowfish encrypted partition on an external hard drive. It isn't that much of a load and there isn't any real loss of speed. I ran P2P software from that partition on a much slower PC several years ago. Encryption doesn't demand that much from a system.

    Virtualization software shouldn't be that heavy either, save for the RAM set aside for the virtual systems themselves. Security doesn't need to be heavy. I'm at a loss as to why coding of most any kind has got so demanding on the system. I can only imagine what new hardware could do if coders had to do like they used to, treat memory and resources like gold instead of being nearly inexhaustible.
     
  15. Gullible Jones

    Gullible Jones Registered Member

    Joined:
    May 16, 2013
    Posts:
    1,461
    Part of it may involve sacrificing performance for maintainability, which frankly is a very good decision in the long run. Also the increasing prevalence of very high level languages, and increasing use of large external libraries. I don't really see the problem with that.

    Re HIPS and the NSA, I don't think that's it. A backdoor in the kernel would fool any HIPS, and the NSA hasn't even been using kernel backdoors; they just have backdoors installed on the hardware during manufacturing, which trumps everything. (There was a thread on that somewhere here...)
     
  16. Mrkvonic

    Mrkvonic Linux Systems Expert

    Joined:
    May 9, 2005
    Posts:
    8,697
    Memory management is a hugely complex thing. I've got a couple of Linux articles coming up, so that's my closest analogy to that. But it comes down to kernel buffers and slabs, application caches, and so forth.

    I can give you my own example:

    On my 16gb box, Win 7 is using 7gb at the moment.
    This includes 3.2gb paged kernel memory, 300mb non-paged.
    Then a bunch of apps that take some 3gb+ (including only committed).
    Seems to amount to a reasonable figure.

    Mrk
     
  17. Gullible Jones

    Gullible Jones Registered Member

    Joined:
    May 16, 2013
    Posts:
    1,461
    @Mrk: I've read a couple books on the design of the Linux kernel, and found the memory management chapters almost unreadable. So yes, I realize it's complex. :) Not the same as actually understanding how it works in any but the vaguest terms though.

    Is it possible that Windows memory management is engineered such that one can't get a full count for each application, or something like that? Could memory fragmentation play into it, or should it not under normal (i.e. not OOM) conditions?
     
  18. MisterB

    MisterB Registered Member

    Joined:
    May 31, 2013
    Posts:
    1,103
    Location:
    Southern Rocky Mountains USA
    I find this really bizarre. I'm using Windows Vista at the moment in a laptop that has 3gb ram and I have 3 browsers with multiple tabs and windows open. I'm at 71% of physical ram. Windows 7 is usually a bit better than Vista in memory usage and management. I rarely go over 60% in a Windows 7 laptop with a similar configuration and amount of memory.


    I feel, in general, memory management is weak in Windows. I go days, sometimes a couple of weeks without rebooting and hibernate my system when I power it down. Inevitably, things stop working very well after a while and I'm forced to reboot. It seems to be mostly due to memory fragmentation and excessive accessing the page file although there are other things that happen in an extended session that don't seem directly memory related. This happens in all versions of Windows that I'm using at present: 7, Vista and Xp. I can usually go a bit longer in 7 than Vista, and Vista longer than Xp but I usually have to reboot Xp due to a network performance issue while Vista and 7 just get slow due to excessive page file access.
     
  19. Mrkvonic

    Mrkvonic Linux Systems Expert

    Joined:
    May 9, 2005
    Posts:
    8,697
    Yes, even in Linux, it's like that.
    The total usage is always somewhat of an estimation.
    But does it matter?
    Mrk
     
  20. safeguy

    safeguy Registered Member

    Joined:
    Jun 14, 2010
    Posts:
    1,709
    Have you tried the built-in Resource Monitor (resmon.exe)? Launch it, go to "Memory" tab and look at the graph. Look at the Available memory value (Free + Standby).

    http://blogs.technet.com/b/askperf/...eshoot-windows-performance-issues-part-1.aspx

    As for Windows Memory Management, you might want to have a look at these resources:

    http://blogs.technet.com/b/markrussinovich/archive/2008/07/21/3092070.aspx

    http://blogs.technet.com/markrussinovich/archive/2008/11/17/3155406.aspx

    https://bitsum.com/virtual_memory_facts_and_memory_optimizer_scams.php

    Btw, why are you not using 64-bit?
     
Loading...
Thread Status:
Not open for further replies.