The Notebook Review forums were hosted by TechTarget, who shut down them down on January 31, 2022. This static read-only archive was pulled by NBR forum users between January 20 and January 31, 2022, in an effort to make sure that the valuable technical information that had been posted on the forums is preserved. For current discussions, many NBR forum users moved over to NotebookTalk.net after the shutdown.
Problems? See this thread at archive.org.

    XP 32bit Pro - what is the maximum memory that will be beneficial?

    Discussion in 'Hardware Components and Aftermarket Upgrades' started by mouser10, Sep 25, 2010.

  1. mouser10

    mouser10 Notebook Enthusiast

    Reputations:
    0
    Messages:
    41
    Likes Received:
    0
    Trophy Points:
    15
    This question and answers usually get complicated by how much memory can be used by programs, or are reserved for the system, start-up, etc.

    Since all of these things will benefit a computer, that's the focus on this post.


    A clear question is:

    What is the maximum amount of memory that will benefit, or have the potential to benefit a computer with XP 32bit (Pro)?

    In other words, what is the maximum amount of memory that can potentially be used by any part (system, OS, program, etc) of a 32bit XP machine?


    And, in layman's terms, when is the 3GB switch beneficial to use?


    note- please only answer if you understand the technics involved... please don't post opinions or assumed facts, or repost other people's opinions or assumptions :b
     
  2. tilleroftheearth

    tilleroftheearth Wisdom listens quietly...

    Reputations:
    5,398
    Messages:
    12,692
    Likes Received:
    2,717
    Trophy Points:
    631
    The maximum amount is 4GB in dual channel configuration (8GB+ can also be used, but that is simply overkill with your self imposed x86 limitation).

    The 3GB switch is only beneficial for specific programs.

    Your 32bit Windows and apps will use as much as they can. Your H/W will deliver the best memory performance (dual channel) that it possibly can.
     
  3. mouser10

    mouser10 Notebook Enthusiast

    Reputations:
    0
    Messages:
    41
    Likes Received:
    0
    Trophy Points:
    15
    Here is a copy& paste of the best specific information I've found so far:

    4GB on Windows XP Pro 32-bit - Memory - Motherboards-Memory

    In a computer all bytes in the memory system need a unique name. This is called an address. For example, if you have 2 GB of main memory, then there are 2147483648 bytes of RAM in your machine, each of which require an address for the operating system to communicate to it. To give these all an address you need 31 bits to do it. Now, if/when you have 32 bits, you can name 4 GB (2 bytes to the 32nd power = 4GB).

    This is why the total addressable space available in a 32 bit OS is 4GB – the OS runs out of addresses and cannot communicate/locate any more bytes of memory because of that.

    You may think ”Hey, 4GB of address space… 4GB of RAM… What’s the problem” The problem is that memory isn’t the only thing needing an address. If you install a total of 4GB worth of RAM, the system will detect/use/display less than 4GB of total memory because of address space allocation for other critical functions, such as:

    - System BIOS (including motherboard, add-on cards, etc..)
    - Motherboards resources
    - Memory mapped I/O
    - Configuration for AGP/PCI-Ex/PCI
    - Other memory allocations for PCI devices

    Different onboard devices and different add-on cards (devices) will result of different total memory size. e.g. more PCI cards installed will require more memory resources, resulting of less memory free for other uses.

    This limitation applies to most chipsets & Windows XP/Vista 32-bit version operating systems. Again, this is a limitation of the Operating System not having enough address space to allocate to the system *and* the RAM. Not allocating address space to devices renders them inoperable. Not allocating addresses to RAM simply results in the unaddressed section not being used in an otherwise fully functional computer. Therefore the OS designers assign RAM last.

    We can have long debates about mathematical fundamentals and discussions about why the original Windows designers couldn't allocate the full theoretical max of 36 bits of address space so that users today would be able to use more resource. But at the end of the day, the designers and engineers 'Didn't Then'. So we 'Can't Now'.


    If you install a Windows operating system, and if more than 3GB memory is required for your system, then the below conditions must be met:

    1. A memory controller which supports memory swap functionality is used. The latest chipsets like Intel 975X, 955X, Nvidia NF4 SLI Intel Edition, Nvidia NF4 SLI X16, AMD K8 and newer architectures can support the memory swap function.

    2. Installation of Windows XP Pro X64 Ed. (64-bit), Windows Vista 64, or other OS which can provide more than 4GB worth of address space.



    Note: According to the latest Change Log published by Microsoft, Windows Vista 32bit SP1 will display the installed amount of RAM. This is a display change only.


    Regarding PAE –

    In order to get around the 4GB limit in a 32 bit OS, there is a functionality called “Physical Address Extensions”. Among other things, this allows an added table the OS can use to add the “same” address in more than one place. Think of this as adding a "street name" to your "address". 1234567890 on table A is not the same as 1234567890 on table B. The limitation is that this *must* be provided for in your programs and drivers in order to work. If your mailman only looks at the '1234567890' but never looks at the street name, then he can and will sometimes deliver a letter to the wrong place. The same thing is true of PAE - If/when then individual program haven’t been coded to look in multiple tables for the needed memory locations in addition to the numerical addresses, messages can and will often go to the wrong place. In Windows, this is a called a “memory access violation”, and results in a blue screen. Additionally, individual programs under PAE can still only use up to 4 GB. Kernels and drivers can be made aware of PAE, but they can still only use 4 GB ranges at a time.

    In short: PAE is not that great. In a server environment the number/version/type of programs and drivers can be tightly controlled, so this works and so this functionality is available on server versions of 32 bit Windows (NT, 2003, 2006, etc). In a consumer environment, this is not true at all.

    Bottom line for ‘regular’ users: If you want to use 4 GB of RAM or more, then you should buy 64-bit hardware and use a 64-bit OS.
     
  4. mouser10

    mouser10 Notebook Enthusiast

    Reputations:
    0
    Messages:
    41
    Likes Received:
    0
    Trophy Points:
    15

    Thanks.

    The laptop (ThinkPad T500) can accept 8GB of RAM, the 32bit XP Pro can address 4GB, so installing more than 4GB would be plain silly, yes.

    It appears that the clear truth is that XP 32bit can make potential use of 4GB.
    There was questions because of people seeing less than 4GB when they had 4GB installed. The 'missing' amount is actually being used by drivers and such, and is subtracted from the displayed amount of installed RAM... and as such, is still being used.
     
  5. Dufus

    Dufus .

    Reputations:
    1,194
    Messages:
    1,336
    Likes Received:
    548
    Trophy Points:
    131
    Depends on the XP version. SP1 with PAE could use all 4GB. SP2 onwards ignored any memory that was remapped above the 4GB physical address range. Some RAMDisk drivers will allow the use of the windows ignored remapped memory above 4GB to be used as a RAMDisk.

    The physical memory address range is mapped to the linear address space and it is the linear address space that is limited to 4GB for a single 32-bit process.

    Under a 32-bit Windows OS that 4GB of linear address space is usually split such that the first 2GB is used for user address space and the last 2GB for the kernel (OS). This will typically limit each user application to 2GB of RAM although using AWE can swap memory in and out of that 2GB space to effectively use more than this. (Don't expect to see use of AWE on a typical consumer OS).

    With the /3GB switch the linear address space can be arranged to have the first 3GB as user address space and only 1GB for the kernel. Therefore if the user application is marked as large address aware it can possibly use up to 3GB of RAM.


    The missing amount is NOT being used by drivers and such, it is being ignored by the OS or not being remapped by the hardware.
     
  6. tilleroftheearth

    tilleroftheearth Wisdom listens quietly...

    Reputations:
    5,398
    Messages:
    12,692
    Likes Received:
    2,717
    Trophy Points:
    631
    Dufus, this is strictly a hardware issue.

    But no matter if the 'ignored' RAM is used or not, there is still an overall benefit (albiet a small one) by using matched sticks so that full dual channel mode is enabled.

    This may also be useful:

    See:
    Coding Horror: Dude, Where's My 4 Gigabytes of RAM?
     
  7. Dufus

    Dufus .

    Reputations:
    1,194
    Messages:
    1,336
    Likes Received:
    548
    Trophy Points:
    131
    Having a Northbridge like the 945 series chipset will limit the hardware even with a 64-bit OS but for those systems that are able to re-map memory then it is an OS issue. In the case of the OP he has already indicated that he can use up to 8GB of RAM with his system so therefore for the OP it is solely a windows XP OS issue.

    XP SP2 ignored memory above 4GB due to some poorly written drivers that were possible written by people who didn't really understand the underlying 32-bit architecture.
     
  8. tilleroftheearth

    tilleroftheearth Wisdom listens quietly...

    Reputations:
    5,398
    Messages:
    12,692
    Likes Received:
    2,717
    Trophy Points:
    631
    Dufus,

    You're correct (but you knew that) in this case it is not a hardware issue.

    His system is really limited strictly by the 32bit O/S he's using.

    I stand corrected.
     
  9. mouser10

    mouser10 Notebook Enthusiast

    Reputations:
    0
    Messages:
    41
    Likes Received:
    0
    Trophy Points:
    15
    I stand corrected on the ignored RAM being actually used.
    and Thanks that was my next question re: using more to enable dual channel.

    Edit:
    Actually these tests posted at
    http://www.tomshardware.com/reviews/PARALLEL-PROCESSING,1705-11.html
    Show a small difference ( < 10% ) between single channel and dual channel.


    Lenovo's page for my laptop's specs says:
    Note: Only 64-bit operating systems support more than 3GB of system memory (RAM).

    So getting 4GB compared to 3GB might not give that much gain, compared to the cost.
     
  10. mouser10

    mouser10 Notebook Enthusiast

    Reputations:
    0
    Messages:
    41
    Likes Received:
    0
    Trophy Points:
    15
    Back with some more ideas on how to minimize unneeded memory mapping, to maximize usable memory.

    These are the items that take memory away from being available:

    - Memory mapped I/O
    - Configuration for AGP/PCI-Ex/PCI
    - Other memory allocations for PCI devices

    Can any of these be disabled or uninstalled to free up memory?

    some possibilities...
    ExpressCard
    PC Card
    Multicard
    Bluetooth

    Anything else?
     
  11. woofer00

    woofer00 Wanderer

    Reputations:
    726
    Messages:
    1,086
    Likes Received:
    0
    Trophy Points:
    55
    The biggest chunk will be memory mapped for video. Anything else is negligible or unreachable.
     
  12. mouser10

    mouser10 Notebook Enthusiast

    Reputations:
    0
    Messages:
    41
    Likes Received:
    0
    Trophy Points:
    15
    Will a video card running two monitors use up more memory than if it's just running 1?

    My video card is a dedicated 256MB Mobility Radeon HD 3650.


    My laptop has 2GB of RAM, and even on idle it uses 500MB of page file space. When I run Portal game, the pf space goes to 1GB.

    Running XP 32, with several devices already uninstalled and disabled, and few (if any) added programs running in the background... I would have guessed that the 2GB of RAM would be sufficient, and not require an additional 500MB of page filing space.
    It is a ThinkPad T500, so there are some motherboard processes, but still, 2.5GB while idle seems like a lot.
     
  13. Trottel

    Trottel Notebook Virtuoso

    Reputations:
    828
    Messages:
    2,303
    Likes Received:
    0
    Trophy Points:
    0
    Yes, a video card will use more memory, but that will not be significant on the desktop. 256MB is way more than enough for two monitors in 2d.

    The page file is going to be there regardless and varies, all depending on your page file settings. Don't look at that to see how much ram you are using, but look at the task manager.
     
  14. woofer00

    woofer00 Wanderer

    Reputations:
    726
    Messages:
    1,086
    Likes Received:
    0
    Trophy Points:
    55
    The pagefile is never empty unless it's disabled. I'm on a 2GB machine at the moment, minimal background processes running, CPU usage flipping between 1-5%, physical memory more than half empty. My page file is a hair under 1GB, a chunk of which is the kernel itself. For the most part, it's better that the pagefile is holding [crap I don't use] because the physical RAM is free for [crap I do use]. It's better this way for low memory machines. Don't worry about it unless your physical is maxed and pagefile is getting hit alot.

    As far as video memory consumption, using two monitors uses more memory, sure. But not alot more. Probably barely more than a tif of an image that's the size of the resolution of the second monitor.

    *edit*

    :( I should preview on responses I post after walking AFK for a bit.
     
  15. mouser10

    mouser10 Notebook Enthusiast

    Reputations:
    0
    Messages:
    41
    Likes Received:
    0
    Trophy Points:
    15
    Ahsee,
    The most taxing thing I have is Portal, and running that in the highest modes results in a Total Commit Charge of 1.2GB.

    So if a system is using 1.5GB of total commit charge... will it run just as fast/smooth with 2GB, as it would with 3GB?
     
  16. mouser10

    mouser10 Notebook Enthusiast

    Reputations:
    0
    Messages:
    41
    Likes Received:
    0
    Trophy Points:
    15
    That's the other part... how much memory/ CPU gets saved by making changes. Saving a net of 2MB or 1% CPU isn't worth it for me, unless the change is something that I would want regardless of the performance results.

    I uninstalled the laptop's camera drivers, which I'd never use... stuff like that.
    Other things like bluetooth, I could potentially use it, so I'd rather disable it, as long as it would have a significant benefit and be easy to re-enable later.
     
  17. tilleroftheearth

    tilleroftheearth Wisdom listens quietly...

    Reputations:
    5,398
    Messages:
    12,692
    Likes Received:
    2,717
    Trophy Points:
    631
    mouser10,

    If your pagefile is not set to a fixed amount - you're wasting valuable time/resources creating/reducing it when you use your computer in a different way/mode (like websurfing/gaming for example).

    For 2GB systems, I would recommend at least a 2GB fixed size pagefile (I prefer 4GB on 32bit XP systems).

    As to your question which would be 'smoother' the 3GB setup or the 2GB one, given that the commit charge is only 1.5GB - it depends on how sensitive you are to small differences in responsiveness.

    I just upgraded an XP SP3 system to 3GB from 2GB - the main user did not see a big difference initially (if any at all to be honest).

    But what I see when I use that machine is that it responds much more directly to my inputs even while I'm starting two, three or even four programs/apps all at once. I can easily say that the $40 cost of the RAM would be made back within a week, if not a day - compared to how it responded with 'only' 2GB RAM.


    As to your idea of disabling devices to maximize the RAM you have available, I would not put any time into that 'optimization' scheme. The RAM you save is so negligible to modern software that it is not worth the time.

    Especially as at the same time you are crippling the system you've paid for - for no appreciable net gain.
     
  18. mouser10

    mouser10 Notebook Enthusiast

    Reputations:
    0
    Messages:
    41
    Likes Received:
    0
    Trophy Points:
    15
    tillerofthearth,

    Uninstalling the camera driver is clear (for my system), given the no chance of me using it, as well as the humorous fact that the laptop has no camera :)
    Temporarily disabling the wifi and 1394 makes sense (to me) since I can easily remember these two things are disabled and they are easy to enable later if needed.

    But in general, it is more peaceful to not make changes that involve wondering if they may negatively affect the system.

    I had changed the page filing size to 'system managed', and afterward the mouse-click inputs were frequently not registering, or were rapidly sending multiple clicks. Now, after re-setting the page filing to a custom size, the mouse glitches have stopped.
    That is one example where the official advice may not be the most helpful.

    A better understanding of the Task Manager Performance window helps. "PF Usage" actually means 'All Memory Usage'. Right now, almost all of "PF Usage" size on my system is coming from physical memory. This is much different than thinking that 100% of the amount is actual page filing.

    This page has a very useful way to monitor real page filing
    http://www.theeldergeek.com/paging_file_performance_monitoring.htm

    However, that is not to say that it is most beneficial to limit the page filing size to whatever the Peak Commit Charge is.

    The best advice I found so far, was between using the
    peak page filing usage % (from the MMC in the link above) (measuring only page filing)
    ... or using the Peak Commit Charge in the Task Manager (measuring physical memory and page filing)

    The first covers what has historically been needed. The second covers what could potentially be needed (though I have no idea when that would occur).


    It's funny, I personally prefer a system that is not 100% instantaneous in response. However when using games or video or audio entertainment, I prefer the seamless and instant quality of the art. Interesting to think about that.
     
  19. tilleroftheearth

    tilleroftheearth Wisdom listens quietly...

    Reputations:
    5,398
    Messages:
    12,692
    Likes Received:
    2,717
    Trophy Points:
    631
    mouser10,

    Not doubting your opinions and/or sources at all.

    However, one does not need to have a better understanding of how the Task Manager Performance window helps to appreciate the fact that more RAM equals a more responsive system (almost always).

    Assuming of course, one wants a more responsive system. ;)
     
  20. micman

    micman Notebook Evangelist

    Reputations:
    242
    Messages:
    662
    Likes Received:
    119
    Trophy Points:
    56
    This thread has been an enlightening insight for me. Thanks to everyone contributing for broadening my knowledge when it comes to memory and 32-bit systems.

    If I may pose a question, how does all this apply to Windows 7 32-bit? I already know that Windows 7 can see the full 4+GB, but can it be used for anything? What about Windows Server 2008 32-bit? Are they vastly similar, or did the code get upgraded for what you call the theoretical 36 bits of addressing?
     
  21. Dufus

    Dufus .

    Reputations:
    1,194
    Messages:
    1,336
    Likes Received:
    548
    Trophy Points:
    131
    32-bit W7 is pretty much the same regarding memory mapped above the 4GB physical address range. The only thing I can think of utilizing the ignored memory is some versions of RAMDisk software.

    AFAIK the old 2008 core was very similar to Vista, however with 2008 the physical address limit was higher so that 4GB or more of RAM could be utilized.

    Windows 32-bit can use PAE if available which uses 64-bit addressing. The 36-bit physical address limit comes from the actual physical limit of the first 32-bit only CPU's (1995). Even a lot of today's Intel CPUs still have a 36-bit physical address limit regardless of whether they are run as 32-bit or 64-bit although you can find higher physical limits.

    IIRC the current maximum supported physical address limit for Intel is 52-bits. For 64-bit systems that can be translated to a 48-bit linear address whereas in a 32-bit system it would be translated to a 32-bit linear address.