Like Tree3Likes

Available memory on my 32Bit Windows 7 Ultimate

This is a discussion on Available memory on my 32Bit Windows 7 Ultimate within the Tech Board forums, part of the Community Boards category; I'm used to seeing Windows report around 3 GB of available memory, out of my 4GB installed memory. I don't ...

  1. #1
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Portugal
    Posts
    7,412

    Available memory on my 32Bit Windows 7 Ultimate

    I'm used to seeing Windows report around 3 GB of available memory, out of my 4GB installed memory. I don't know when it started, but today I just noticed it is reporting only 2GB of available memory.

    A few days ago I had to manually start memory compatibility tunning on my ASUS P7P55D-E motherboard. The constant power failures at my location have probably been stressing my motherboard electrical components. I can experience an average of 2 power failures a day and have been experiencing this for close to 2 years, for a potential 1,200 power failures suffered by this machine.

    Memory Compatibility Tunning is started by pressing the MemOK switch on my motherboard, when the system cannot boot due to memory issues and the MemOk! light on the motherboard stays red. So far, this process has allowed me to boot the machine.

    However, I now see only 2GB available memory. Shouldn't my system report an error in case of a DIMM failure. I have 2X2GB dimms installed.
    Last edited by Mario F.; 12-23-2013 at 04:37 AM.
    The programmer’s wife tells him: “Run to the store and pick up a loaf of bread. If they have eggs, get a dozen.”
    The programmer comes home with 12 loaves of bread.


    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  2. #2
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Portugal
    Posts
    7,412
    I thought of setting my BIOS to perform a slow boot and simply swapped the 2 DIMMS. The machine booted on first try and I'm back to 3.5 GB of available memory.

    I didn't know I could boot without errors or warnings with a single DIMM on a 2 DIMM setup. Anyone can clarify why is that possible?
    The programmer’s wife tells him: “Run to the store and pick up a loaf of bread. If they have eggs, get a dozen.”
    The programmer comes home with 12 loaves of bread.


    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  3. #3
    Master Apprentice phantomotap's Avatar
    Join Date
    Jan 2008
    Posts
    4,167
    However, I now see only 2GB available memory. Shouldn't my system report an error in case of a DIMM failure. I have 2X2GB dimms installed.
    O_o

    I've never seen that before, and I can't help with that, but I have to ask, are these bursts or total failures?

    If these outages are bursts, you should absolutely invest in a UPC.

    Soma
    Mario F. likes this.
    “Often out of periods of losing come the greatest strivings toward a new winning streak.” -- Fred Rogers
    “Salem Was Wrong!” -- Pedant Necromancer

  4. #4
    Registered User
    Join Date
    Jun 2005
    Posts
    6,198
    Quote Originally Posted by Mario F. View Post
    I didn't know I could boot without errors or warnings with a single DIMM on a 2 DIMM setup. Anyone can clarify why is that possible?
    A dual channel setup relies on the memory controller accessing memory via a set of wires. The only difference is that the number of wires is doubled (compared with a single-channel setup) so the effective bandwidth increases - by accessing memory on two DIMMs (sort of) concurrently.

    If the memory subsystem has trouble accessing one of the DIMMs in a pair, there are two choices: simply don't access the pair (in which case the machine cannot boot, if those DIMMs are all of the available RAM) or only access the wires for the working DIMM (in which case both reported memory for that pair will be halved, and bandwidth will be reduced). From your description, it appears your memory controller defaults to the first choice, and the MemOK forces it to try the second.

    Apparently, your power outages have altered some operating parameter (e.g. a voltage) that causes one of the DIMMs (or related circuitry) to be outside requirements, as distinct from an outright failure (completely non-working). Changing the DIMMs around apparently corrected that - you got lucky.

    As to why you wouldn't get errors or warnings. Logically, the memory controller is distinct from the BIOS (e.g. a subsystem initialised/managed by - or as part of - the BIOS), even if they are physically related (e.g. part of the same overall circuit). What you're seeing will depend on how the memory controller and BIOS interact, and what the BIOS does with status information provided by the memory controller. Logically If the memory controller doesn't report a problem to the BIOS, the BIOS cannot emit an error or warning message. If the memory controller does report a status, the BIOS may simply be configured not to report it (e.g. a setting to be less verbose).
    Last edited by grumpy; 12-23-2013 at 06:42 PM.
    Mario F. likes this.
    Right 98% of the time, and don't care about the other 3%.

  5. #5
    Registered User
    Join Date
    Dec 2006
    Location
    Canada
    Posts
    3,167
    Failures due to electrical bursts tend to be gradual and intermittent. It's like undefined behaviour in programming - anything can happen. Usually it would fail once in a while, do some weird things once in a while, do more weird things when it's heated up, but perform normally otherwise. Very rarely would it just completely fail.

    "Memory Compatibility Tunning" I am assuming just cycles through different latency settings, and when you have marginal/failing hardware, relaxing memory timings (basically operating slower than spec) may make it work more often.

    There's really not much you can do besides replacing things, and if the whole system is subjected to surges, it's almost impossible to tell which part is failing.

    I would recommend getting a good surge protector. Unfortunately I can't give advices here since that's not my specialty, and I happen to live at a place where that's not really a problem so I never really looked into it. I do know many "surge protectors" on the market are completely useless, though.

    Sudden power cuts should be OK, just not the surges that usually hit when power comes back. UPS definitely works too (good ones), but are more expensive.
    Mario F. likes this.

  6. #6
    Registered User
    Join Date
    Dec 2006
    Location
    Canada
    Posts
    3,167
    By the way, if you don't mind me asking, why 32-bit? Haven't seen 32-bit systems in quite a while.

  7. #7
    Registered User Hodor's Avatar
    Join Date
    Nov 2013
    Posts
    650
    Quote Originally Posted by cyberfish View Post
    By the way, if you don't mind me asking, why 32-bit? Haven't seen 32-bit systems in quite a while.
    As far as I know the size (bits) of the address bus is not necessarily related to the OS.

    Besides, Windows XP installations are still very common (and Windows XP 64 even rarer than it was).

  8. #8
    Registered User
    Join Date
    Dec 2006
    Location
    Canada
    Posts
    3,167
    As far as I know the size (bits) of the address bus is not necessarily related to the OS.
    It doesn't HAVE to be, but is on most architectures (including x86), though there are many exceptions in the embedded world.

    It's just the width the CPU most "natively" works with, which usually is the same as the width of general purpose registers. Then it makes sense that addresses are also that width because that makes indirect addressing easier.

  9. #9
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Portugal
    Posts
    7,412
    Thanks guys. Very informative there Grumpy. You totally got me into a research spree on this subject.

    @phantomotap, they are pure man made power cuts. Energy is otherwise of high quality. It just so happens the country still lacks the infrastructure to service a capital city of close to 10 million inhabitants. Half the country population migrated here during the civil war (this colony times city had been initially built for around 800,000 inhabitants, IIRC), so the construction in the periphery is completely chaotic, which compounds the problem and risks lowering the quality of the energy. So they do selective power cuts to avoid tear and wear of their infrastructure and to compensate during periods of large consumption.

    In any case I have a voltage regulator, cpu controlled. It's a nice little white box that does quite the job at keeping my computer safe from any power spikes. I don't think it protects me against all possible things that can go wrong with energy. But again, the city doesn't really concern me in terms of the quality of the energy,

    @cyberfish, just lack of an opportunity. When I moved here two years ago I was already contemplating the possibility of installing the 64 bit version of windows on this machine. But the work pressure was too much for me to spend an entire day or two reinstalling and getting everything back in order. This is a 2 terabyte PC I have here and, trust me, I get it pretty much filled. Besides at that time I didn't look at 64bit as something so important. Today I do want to make the upgrade, but that will entail downloading from MSDN the image file and then getting the windows 7 updates all to this point. It just so happens that an internet connection here costs around 45 USD for a 2GB monthly plan. Do I need to say more?...
    The programmer’s wife tells him: “Run to the store and pick up a loaf of bread. If they have eggs, get a dozen.”
    The programmer comes home with 12 loaves of bread.


    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  10. #10
    Registered User
    Join Date
    Jul 2012
    Location
    Australia
    Posts
    242
    32-Bit Windows 7 can't recognise(and so can't use) all the 4 GB of RAM. If I am not mistaken, it can only recognise 3.2-3.5GB of Ram. So I am surprised that you have 3 GB to spare.I am also running W7 Ult, and Windows alone takes up 1.4 GB. Only about 1 GB of free ram left once I've loaded my normal apps.
    IDE: Code::Blocks | Compiler Suite for Windows: TDM-GCC (MingW, gdb)

  11. #11
    (?<!re)tired Mario F.'s Avatar
    Join Date
    May 2006
    Location
    Portugal
    Posts
    7,412
    I don't have 3GB to spare. I'm just talking of available memory to the operating system. That's 3.5 GB (3,582 MB to be more precise).

    The available memory for the applications is, of course, smaller. After boot with all the stuff I have going on this computer I'm getting 1800 MB of free physical memory. With swap space and virtual memory this is pretty much all I need for web cruising, programming, playing games and watching porn.
    The programmer’s wife tells him: “Run to the store and pick up a loaf of bread. If they have eggs, get a dozen.”
    The programmer comes home with 12 loaves of bread.


    Originally Posted by brewbuck:
    Reimplementing a large system in another language to get a 25% performance boost is nonsense. It would be cheaper to just get a computer which is 25% faster.

  12. #12
    Registered User
    Join Date
    Oct 2006
    Posts
    2,292
    Quote Originally Posted by Mario F. View Post
    I don't have 3GB to spare. I'm just talking of available memory to the operating system. That's 3.5 GB (3,582 MB to be more precise).
    I think it depends on memory mapped IO devices and video memory. if you put a 2GB video card in a computer with a 32-bit operating system, no matter how much physical RAM you have installed, you'll likely have less than 2GB available to the operating system.
    Code:
    namespace life
    {
        const bool change = true;
    }

  13. #13
    Master Apprentice phantomotap's Avatar
    Join Date
    Jan 2008
    Posts
    4,167
    I think it depends on memory mapped IO devices and video memory. if you put a 2GB video card in a computer with a 32-bit operating system, no matter how much physical RAM you have installed, you'll likely have less than 2GB available to the operating system.
    O_o

    Nah.

    "Physical Address Extension" has been a thing now for a long time, and as far as I know, Microsoft "Windows" 32bit operating systems are the only modern operating systems which do not offer support "out-of-the-box".

    I had a few hacks enabled on my 32bit "Windows 7" and ran with 10 GiB almost fine.

    So, the limit of available physical RAM is only limited to the ~4GiB threshold thanks largely to the licensing model used by Microsoft.

    [Edit]
    Yes, rumors of driver problems are told, but I stand by the assertion of historical "money grab".

    You see, they could have fixed the driver problems over the last decade.
    [/Edit]

    Soma
    “Often out of periods of losing come the greatest strivings toward a new winning streak.” -- Fred Rogers
    “Salem Was Wrong!” -- Pedant Necromancer

  14. #14
    Registered User
    Join Date
    Dec 2006
    Location
    Canada
    Posts
    3,167
    It seems strange that Microsoft would use the 4GB limit as money grab, since the 64-bit edition is the same price, and 32-bit licenses can be used to install 64-bit editions also (I do that all the time).

    The 64-bit editions have arbitrary money grab RAM limits, too, but are usually much higher than 4GB.

    Maybe they just don't think it's worth it to invest in fixing driver problems since everyone is switching to 64-bit?

  15. #15
    C++まいる!Cをこわせ! Elysia's Avatar
    Join Date
    Oct 2007
    Posts
    22,424
    Besides that, does every OTHER driver support Physical Address Extension? I'm no kernel dev, but I'm guessing that due to the complexity of the kernel, the drivers aren't entirely out of the woods.
    Quote Originally Posted by Adak View Post
    io.h certainly IS included in some modern compilers. It is no longer part of the standard for C, but it is nevertheless, included in the very latest Pelles C versions.
    Quote Originally Posted by Salem View Post
    You mean it's included as a crutch to help ancient programmers limp along without them having to relearn too much.

    Outside of your DOS world, your header file is meaningless.

Page 1 of 2 12 LastLast
Popular pages Recent additions subscribe to a feed

Similar Threads

  1. Has anyone tried Ultimate++ or WideStudio IDE's?
    By lectus in forum Tech Board
    Replies: 3
    Last Post: 09-24-2006, 06:31 PM
  2. The ultimate noob lol...plz help
    By thatpkrguy in forum C++ Programming
    Replies: 14
    Last Post: 11-10-2005, 05:53 PM
  3. Ultimate Electronics.
    By Cheeze-It in forum A Brief History of Cprogramming.com
    Replies: 2
    Last Post: 10-19-2002, 11:49 AM
  4. The ultimate...
    By Aran in forum A Brief History of Cprogramming.com
    Replies: 13
    Last Post: 05-03-2002, 09:03 PM

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21