Why can't Vista 32-bit use a separate memory address space for SuperFetch?

magreen

Golden Member
Dec 27, 2006
1,309
1
81
I had an idea. Why doesn't Microsoft make Vista 32-bit use a separate 4gb address space for their SuperFetch? That's why everybody wants >4gb, to speed up the slow hdd access.

So just have a separate 4gb address space, starting at an arbitrary (user-settable) address in memory. Then you could have 3.5gb for regular mem, and 4gb for superfetch.

Why not?
 

MrChad

Lifer
Aug 22, 2001
13,507
3
81
Because 2^32 = 4,294,967,296 (4 GB).

Each address in the address space has to be uniquely identified. A 32-bit operating system can only uniquely identify 4,294,967,296 addresses. Any memory above that is unaddressable.

(This is overly-simplified, of course, and there are hacks such as Physical Address Extensions to get around this limitation)
 

Crusty

Lifer
Sep 30, 2001
12,684
2
81
Or you could just install Vista 64-bit which anyone that has 4GB of ram or more should be doing anyways. The only reason I see for not installing 64-bit Vista is if some piece of hardware you use does not have a Vista 64-bit driver, but that's an exception nowadays anyways.
 

bsobel

Moderator Emeritus<br>Elite Member
Dec 9, 2001
13,346
0
0
Originally posted by: magreen
I had an idea. Why doesn't Microsoft make Vista 32-bit use a separate 4gb address space for their SuperFetch? That's why everybody wants >4gb, to speed up the slow hdd access.

So just have a separate 4gb address space, starting at an arbitrary (user-settable) address in memory. Then you could have 3.5gb for regular mem, and 4gb for superfetch.

Why not?

It's workable, you'd need an extra memory copy however when the page was brought active. But more importantly, its a hack. If you have or want to have more than >3gig on your box, you should be on a 64bit OS. There is no reason to continue to support 32bit os's on large memory configs via games like this.

 

magreen

Golden Member
Dec 27, 2006
1,309
1
81
Oh I agree they should have dumped 32 bit years ago, and they were insane for releasing vista in 32 bit... The only reason for Microsoft to keep 32 bit was so 3rd party vendors wouldn't have to rewrite all their drivers... But they had to rewrite all their drivers anyway for vista, so Microsoft was idiotic for ever releasing vista in 32 bit. And I can't believe they'd think of doing that when we're so close to the 4gb limit. It's the same old 640k idiocy all over again.

But given that that's water under the bridge, and a lot of us are stuck with vista 32-bit, my suggestion is they add this "extended memory" for superfetch to the next service pack for vista 32.
 

Crusty

Lifer
Sep 30, 2001
12,684
2
81
Originally posted by: magreen
Oh I agree they should have dumped 32 bit years ago, and they were insane for releasing vista in 32 bit... The only reason for Microsoft to keep 32 bit was so 3rd party vendors wouldn't have to rewrite all their drivers... But they had to rewrite all their drivers anyway for vista, so Microsoft was idiotic for ever releasing vista in 32 bit. And I can't believe they'd think of doing that when we're so close to the 4gb limit. It's the same old 640k idiocy all over again.

But given that that's water under the bridge, and a lot of us are stuck with vista 32-bit, my suggestion is they add this "extended memory" for superfetch to the next service pack for vista 32.

Stuck with 32-bit? Can't you upgrade to 64-bit for free from MS?
 

pallejr

Senior member
Apr 8, 2007
216
0
0
If you have more ram than your OS is willing to use, maybe a ramdrive will make you happy. SuperSpeed has a product that they say will ignore this 4G boundary.

And sometimes I wonder what makes PAE a "hack".
 

magreen

Golden Member
Dec 27, 2006
1,309
1
81
I think there was a thread about that somewhere, some people saying their oem key did or didn't work on the 64 bit upgrade thru microsoft.

but either way, wouldn't this be a good way to get a big boost without having to reinstall the os? It could just be a SP
 

bsobel

Moderator Emeritus<br>Elite Member
Dec 9, 2001
13,346
0
0
Originally posted by: magreen
I think there was a thread about that somewhere, some people saying their oem key did or didn't work on the 64 bit upgrade thru microsoft.

but either way, wouldn't this be a good way to get a big boost without having to reinstall the os? It could just be a SP

No, the number of users having >4gig and running a 32bit OS is very very small.
 

magreen

Golden Member
Dec 27, 2006
1,309
1
81
If you include the people who would like to upgrade to >4gb but don't since their os is 32bit... ?
 

bsobel

Moderator Emeritus<br>Elite Member
Dec 9, 2001
13,346
0
0
Originally posted by: magreen
If you include the people who would like to upgrade to >4gb but don't since their os is 32bit... ?

If they need >4gig they should run an OS which allows them to use it. Otherwise, this is a minor hack which gives some benefit but not much to the vast majority of users.
 

Rhonda the Sly

Senior member
Nov 22, 2007
818
4
76
If Microsoft built PAE into Vista or 7 it would probably cause problems with adoption of 64-bit operating systems.
 

pcslookout

Lifer
Mar 18, 2007
11,944
150
106
Originally posted by: bsobel
Originally posted by: magreen
I had an idea. Why doesn't Microsoft make Vista 32-bit use a separate 4gb address space for their SuperFetch? That's why everybody wants >4gb, to speed up the slow hdd access.

So just have a separate 4gb address space, starting at an arbitrary (user-settable) address in memory. Then you could have 3.5gb for regular mem, and 4gb for superfetch.

Why not?

It's workable, you'd need an extra memory copy however when the page was brought active. But more importantly, its a hack. If you have or want to have more than >3gig on your box, you should be on a 64bit OS. There is no reason to continue to support 32bit os's on large memory configs via games like this.

:thumbsup:
 

RebateMonger

Elite Member
Dec 24, 2005
11,588
0
0
<=== Wonders if he can use his old AST 1988-era EEMS memory card (ISA slot with 1.5 MEGABytes of memory chips (dozens of chips) in the sockets).

Computer-literate friends were envious of my AST card and all that memory. I called it "EEMS-envy", if you get the pun.
 

pallejr

Senior member
Apr 8, 2007
216
0
0
It's workable, you'd need an extra memory copy however when the page was brought active.

No need to do any extra copying. If Microsoft made sure the address space above 4G wouldn't be used by drivers, the problem they talk so much about would go away.
 

bsobel

Moderator Emeritus<br>Elite Member
Dec 9, 2001
13,346
0
0
Originally posted by: pallejr
It's workable, you'd need an extra memory copy however when the page was brought active.

No need to do any extra copying. If Microsoft made sure the address space above 4G wouldn't be used by drivers, the problem they talk so much about would go away.

You'd need to do an extra copy (actually two, one on read, one on use) unless you simply allow the Vista32 family to run in PAE mode and use all of the memory. Thats not gonna happen.

 

pallejr

Senior member
Apr 8, 2007
216
0
0
Unless you run in PAE mode and use the upper address space you won't be using it at all.

So your idea would be that the memory manger caches data up there, and copy it down below 4G before being used?
 

bsobel

Moderator Emeritus<br>Elite Member
Dec 9, 2001
13,346
0
0
Originally posted by: pallejr
Unless you run in PAE mode and use the upper address space you won't be using it at all.

So your idea would be that the memory manger caches data up there, and copy it down below 4G before being used?

If you understood how Superfetch works yo should see why (not saying you dont know, but it s a fairly specific implementation). In short the superfetch pages are the actual data pages, they are just marked at a low memory priority so they can be reclaimed for other uses if needed. In this scenario your really making superfetch more of a drive cache. When you needed the actual data it would need to be copied from the cache to an available memory page. Your right it would be bettter to certify drivers for >4gig and run PAE and not worry about any of this, but he was suggesting a 'quick change' to windows to make this work. Enabling PAE on 32bit at this point and certifying drivers isn't gonna be quick.
 

pallejr

Senior member
Apr 8, 2007
216
0
0
What I said about PAE. If drivers only get their buffers allocated below 4G, you won't have the problem.

If superfetch should work like that, you would have another problem. At some point, you would run out of address space, and that would force Windows to page data out to the harddrive, or use some of the ram above 4G as part of the paging file, before the cached data could be used.
 

bsobel

Moderator Emeritus<br>Elite Member
Dec 9, 2001
13,346
0
0
Originally posted by: pallejr
What I said about PAE. If drivers only get their buffers allocated below 4G, you won't have the problem.

If superfetch should work like that, you would have another problem. At some point, you would run out of address space, and that would force Windows to page data out to the harddrive, or use some of the ram above 4G as part of the paging file, before the cached data could be used.

Sure, but if you force drivers to only use memory in the first 4gig you wind up double buffering there. You just cant avoid the extra memory copies in that scenario.

 

pallejr

Senior member
Apr 8, 2007
216
0
0
Wind up double buffering? That technique is being used when buffers are above 4G, but the device cannot address that high. By only using ram below 4G, double buffering would never be used.
 

bsobel

Moderator Emeritus<br>Elite Member
Dec 9, 2001
13,346
0
0
Originally posted by: pallejr
Wind up double buffering? That technique is being used when buffers are above 4G, but the device cannot address that high. By only using ram below 4G, double buffering would never be used.

Sigh. I know you have some sort of a dev background, but constantly arguing with you over windows memory management is getting old. Yes, you need to double buffer in that scenario. When running in PAE mode, application A allocates memory. That memory may well be above the 4gig physical. When the device complete's it's io/dma that data is now in the wrong buffer below the 4gig physical and a memory copy is used to move it from where it was transferred to to the applications buffer. Its the double buffer overhead that keeps PAE from being as performant as non PAE mode.

 
sale-70-410-exam    | Exam-200-125-pdf    | we-sale-70-410-exam    | hot-sale-70-410-exam    | Latest-exam-700-603-Dumps    | Dumps-98-363-exams-date    | Certs-200-125-date    | Dumps-300-075-exams-date    | hot-sale-book-C8010-726-book    | Hot-Sale-200-310-Exam    | Exam-Description-200-310-dumps?    | hot-sale-book-200-125-book    | Latest-Updated-300-209-Exam    | Dumps-210-260-exams-date    | Download-200-125-Exam-PDF    | Exam-Description-300-101-dumps    | Certs-300-101-date    | Hot-Sale-300-075-Exam    | Latest-exam-200-125-Dumps    | Exam-Description-200-125-dumps    | Latest-Updated-300-075-Exam    | hot-sale-book-210-260-book    | Dumps-200-901-exams-date    | Certs-200-901-date    | Latest-exam-1Z0-062-Dumps    | Hot-Sale-1Z0-062-Exam    | Certs-CSSLP-date    | 100%-Pass-70-383-Exams    | Latest-JN0-360-real-exam-questions    | 100%-Pass-4A0-100-Real-Exam-Questions    | Dumps-300-135-exams-date    | Passed-200-105-Tech-Exams    | Latest-Updated-200-310-Exam    | Download-300-070-Exam-PDF    | Hot-Sale-JN0-360-Exam    | 100%-Pass-JN0-360-Exams    | 100%-Pass-JN0-360-Real-Exam-Questions    | Dumps-JN0-360-exams-date    | Exam-Description-1Z0-876-dumps    | Latest-exam-1Z0-876-Dumps    | Dumps-HPE0-Y53-exams-date    | 2017-Latest-HPE0-Y53-Exam    | 100%-Pass-HPE0-Y53-Real-Exam-Questions    | Pass-4A0-100-Exam    | Latest-4A0-100-Questions    | Dumps-98-365-exams-date    | 2017-Latest-98-365-Exam    | 100%-Pass-VCS-254-Exams    | 2017-Latest-VCS-273-Exam    | Dumps-200-355-exams-date    | 2017-Latest-300-320-Exam    | Pass-300-101-Exam    | 100%-Pass-300-115-Exams    |
http://www.portvapes.co.uk/    | http://www.portvapes.co.uk/    |