Welcome Guest.   Make a donation to an author on the site October 01, 2014, 09:24:14 PM  *

Please login or register.
Or did you miss your validation email?


Login with username and password (forgot your password?)
Why not become a lifetime supporting member of the site with a one-time donation of any amount? Your donation entitles you to a ton of additional benefits, including access to exclusive discounts and downloads, the ability to enter monthly free software drawings, and a single non-expiring license key for all of our programs.


You must sign up here before you can post and access some areas of the site. Registration is totally free and confidential.
 
Read the Practical Guide to DonationCoder.com Forum Search Features
   
   Forum Home   Thread Marks Chat! Downloads Search Login Register  
Pages: Prev 1 [2]   Go Down
  Reply  |  New Topic  |  Print  
Author Topic: 32-bit Windows and the dreaded (and misunderstood) 4GB RAM limit  (Read 14997 times)
f0dder
Charter Honorary Member
***
Posts: 8,774



[Well, THAT escalated quickly!]

see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #25 on: September 30, 2008, 01:10:26 AM »

Drawbacks?

1) less address space for the kernel (including filesystem cache and mapped devices... considering how much memory modern GPUs map, this could become a problem).

2) only applications specifically linked with "large address-space aware" can take advantage of the larger address space, otherwise they get the normal 2:2 split. Not many applications benefit, anyway, obviously only those needing a lot of RAM.

3) it doesn't solve the problem at all, as it has absolutely nothing to do with the problem this thread is about smiley
Logged

- carpe noctem
Cavalcader
Charter Member
***
Posts: 192


Live Long & Prosper

View Profile Give some DonationCredits to this forum member
« Reply #26 on: September 30, 2008, 06:50:47 AM »

Drawbacks?

1) less address space for the kernel (including filesystem cache and mapped devices... considering how much memory modern GPUs map, this could become a problem).

2) only applications specifically linked with "large address-space aware" can take advantage of the larger address space, otherwise they get the normal 2:2 split. Not many applications benefit, anyway, obviously only those needing a lot of RAM.

3) it doesn't solve the problem at all, as it has absolutely nothing to do with the problem this thread is about smiley
For #3, I thought maybe the larger issue was making more memory available to ravenous apps. ('Sides, the topic's been sitting idle for a couple weeks and this is at least related.)

Point taken about GPUs and the rest, but with a 256M graphics card it still leaves the other 3/4 gig for files & devices. (I'll have to do some more digging to see what a typical load would/should be.)

I'm thinking about a somewhat specific use in making mem available for Adobe (audio/video) & other multimedia apps. They prolly already do a bit of mem management on their own, though, and I guess the swapfile can ultimately inherit the non-realtime active storage. I was just trying to figure out where this'd be useful.
« Last Edit: September 30, 2008, 06:53:23 AM by Cavalcader » Logged

My Linguistic Profile:
  40% General American English
  30% Yankee
  20% Dixie

What Kind of American English Do You Speak?
Carol Haynes
Waffles for England (patent pending)
Global Moderator
*****
Posts: 7,956



see users location on a map View Profile WWW Give some DonationCredits to this forum member
« Reply #27 on: September 30, 2008, 07:02:50 AM »

Having just set up a new system with a new motherboard I whacked in 3Gb of RAM (2 x 512Mb, 2 x 1Gb in separate dual memory channels). The mobo has online GeForce 73000 dual head graphics and since I am not gaming or doing anything like that I decided to stick with onboard graphics and sound for the time being.

I install XP 32-bit on the machine and fired up and I now have 3Gb (less 256Mb) Graphics memory pretty much spot on. I could add a graphics card and disable onboard graphics and gain the extra 256Mb but it seems to work pretty well. This is the first time I have jumped above 2Gb and I was quite surprised to see Windows announce that PAE had been automatically enabled.
Logged

f0dder
Charter Honorary Member
***
Posts: 8,774



[Well, THAT escalated quickly!]

see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #28 on: September 30, 2008, 10:53:20 AM »

For #3, I thought maybe the larger issue was making more memory available to ravenous apps. ('Sides, the topic's been sitting idle for a couple weeks and this is at least related.)[/url]
And it indeed does that, for applications that have been linked so that they are flagged as "aware" of large memory - and that could be useful for particular memory slugs - but it still doesn't fix the "more than 3GB blue on 32bit client Windows versions". (32bit server versions can utilize PAE to use more than 4gig physical, but still of course only 32bit address space per app).

Point taken about GPUs and the rest, but with a 256M graphics card it still leaves the other 3/4 gig for files & devices. (I'll have to do some more digging to see what a typical load would/should be.)
Keep in mind that the kernel address space is also used for various kernel-mode structures (there's a lot of those), drivers, et cetera. 512meg video cards are becoming common now, there's even 1-gig cards, and some people are running 512meg (or even 1gig >_<) cards in SLI. Quickly adds up. I dunno if cards reserve their full memory capacity of address space, but I wouldn't be surprised if they do!

I'm thinking about a somewhat specific use in making mem available for Adobe (audio/video) & other multimedia apps.
Could be useful. Iirc SQL server even uses the "address-windowing extensions" on 32bit server Windows, in order to be able to use more than 4GB physical memory (although in "chunks" or "windows").

Much smarter moving to 64bit though, it simplifies things a lot. I recall Adobe claiming they haven't ported stuff like Photoshop over to 64bit yet "because it doesn't bring significant improvements", but if that is an official Adobe statement, it's crap. I can certainly see their memory-hungry products benefit from being able to address more than 2GB (I wonder if their apps are large-address-space-aware?), and some of the compute-intensive plugins and filters for photoshop could probably benefit from the more & larger CPU registers x64 brings.

I install XP 32-bit on the machine and fired up and I now have 3Gb (less 256Mb) Graphics memory pretty much spot on. I could add a graphics card and disable onboard graphics and gain the extra 256Mb but it seems to work pretty well. This is the first time I have jumped above 2Gb and I was quite surprised to see Windows announce that PAE had been automatically enabled.
Windows should automatically turn on PAE if your CPU supports it, since PAE is required in order to use the CPU per-page no-execute bit... known as DEP under windows (yeah, there's some limited DEP for CPUs without NX-bit support). So it's not enabled PAE in order to utilize the memory, Microsoft intentionally crippled 32bit client versions of windows not to smiley
Logged

- carpe noctem
Cavalcader
Charter Member
***
Posts: 192


Live Long & Prosper

View Profile Give some DonationCredits to this forum member
« Reply #29 on: September 30, 2008, 12:40:44 PM »

I can certainly see their memory-hungry products benefit from being able to address more than 2GB (I wonder if their apps are large-address-space-aware?)
I'm pretty sure I read that they can address up to 16 GB RAM (guess that'd be the 32-bit app under a 64-bit OS). I did read that Photoshop CS2 will benefit from IncreaseUserVA, so presumably later versions are aware as well.

I was reminded that VA (Virtual Addressing) means virtual memory, not the physical stuff -- I guess I'm more offtopic than I thought. embarassed
Logged

My Linguistic Profile:
  40% General American English
  30% Yankee
  20% Dixie

What Kind of American English Do You Speak?
f0dder
Charter Honorary Member
***
Posts: 8,774



[Well, THAT escalated quickly!]

see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #30 on: September 30, 2008, 12:47:32 PM »

Hmm, address up to 16GB of RAM for a 32bit windows application?

That would require...
1) server edition of Windows, in order to use the physical RAM
2) the program utilizing the Address-Windowing Extensions API.

Funny enough the MSDN pages say the AWE API is available for client versions of Windows, which doesn't really make sense - unless they mean 64bit client versions. And it's a mess to use anyway, compared to pure clean 64bit goodness (people who coded in the 16bit DOS days and used XMS or EMS will likely agree smiley).
Logged

- carpe noctem
Pages: Prev 1 [2]   Go Up
  Reply  |  New Topic  |  Print  
 
Jump to:  
   Forum Home   Thread Marks Chat! Downloads Search Login Register  

DonationCoder.com | About Us
DonationCoder.com Forum | Powered by SMF
[ Page time: 0.032s | Server load: 0 ]