Personal computing discussed

Moderators: renee, morphine, SecretSquirrel

 
snowdog
Gerbil First Class
Posts: 111
Joined: Sat Jan 04, 2003 4:11 pm
Location: Ottawa, Canada

Thu Jul 26, 2007 10:03 am

Glorious wrote:
That's undoubtedly a very important reason, but it's certainly not the only reason. The virtualization of videocard memory in userspace is generally just a good idea. Aero wouldn't be able to play well, if at all, with windowed 3d programs, if this aspect (and others) of WDDM didn't exist.


According to Microsofts own documentation it is done "primarily for security reasons" (direct quote). Interpret as you wish.

To me the why is not so important. There are now 768MB and even 1GB video cards now. With 2GB of user space and a 1GB video Card you are down to 1GB of user address space that didn't happen in XP.

There needs to be some kind of backward compatible mode in Vista for 32Bit programs, especially games that might need more than 1GB of user address space. It is hard to understand how something this fundamental slipped by Microsoft. We are talking about cutting a needed resource potentially in half, it should be obvious there is large potential for this to wreak havoc.
 
murfn
Gerbil Elite
Posts: 517
Joined: Thu Aug 31, 2006 8:18 am

Thu Jul 26, 2007 11:12 am

Forge wrote:
I can only speak to my own understanding, but you made everything as clear as mud.

The core issue here is that Vista is chewing up all of the 2GB of system address space and continuing in on the user address space in many, possibly most configurations. This is a critically bad thing. Why it is doing it is tangential, the point that is being made, and that is so very upsetting, is that Vista is breaking something fundamental that worked in every other OS, and nobody has promoted a good explanation as to why.

If you have any questions about my explanation feel free to ask. It would benefit your understanding if you did not dictate what the core issue is, and just asked for clarification about those parts you feel uncertain about.
 
Glorious
Gerbilus Supremus
Posts: 12343
Joined: Tue Aug 27, 2002 6:35 pm

Thu Jul 26, 2007 11:18 am

snowdog wrote:
According to Microsofts own documentation it is done "primarily for security reasons" (direct quote). Interpret as you wish


Which, of course, means far more than just "DRM." In general you don't want processes be able to read each other's data in any fashion, no? I mean, that's just basic OS design.

And like I said, there are numerous important reasons for virtualizing video memory. Aero really wouldn't be possible without it, for one thing. It's not some crazy plot. Mac OS does this too, since 10.2!

snowdog wrote:
To me the why is not so important. There are now 768MB and even 1GB video cards now. With 2GB of user space and a 1GB video Card you are down to 1GB of user address space that didn't happen in XP.


I didn't say the "why" wasn't important, I said that DRM was an important reason but not the only reason FOR why. You misread me.

snowdog wrote:
There needs to be some kind of backward compatible mode in Vista for 32Bit programs, especially games that might need more than 1GB of user address space.


I guess there should be, but that's complicated (and likely will reduce performance)and at a minimum it'll require turning off Aero. Microsoft completely redid the way it treats graphics, and they did so for the better. The effects of this are very small (only a few games) and the solution is ridiculously simple (use large address aware). Virtualizing video memory is simply a better way of doing things.

snowdog wrote:
It is hard to understand how something this fundamental slipped by Microsoft. We are talking about cutting a needed resource potentially in half, it should be obvious there is large potential for this to wreak havoc.


Because all games beyond this point are going to be large address aware. Most games before this point don't use 2GBs, and the few that do are new enough that they're going to get patched. That will buy us at least a year or two, and, by then, games are just going to be compiled 64bit as a requirement anyway.
 
Forge
Lord High Gerbil
Posts: 8253
Joined: Wed Dec 26, 2001 7:00 pm
Location: Gone

Thu Jul 26, 2007 11:24 am

Jesu Christe.... If it's mapping to app address space *only*, that's really ultra-mega-bad news!

I'm wondering how I got two 7950GX2s to even boot on Vista32. That's 2GB of VRAM, so app address space should have been entirely exhausted before any app even ran!
Please don't edit my signature for me. Thanks.
 
snowdog
Gerbil First Class
Posts: 111
Joined: Sat Jan 04, 2003 4:11 pm
Location: Ottawa, Canada

Thu Jul 26, 2007 11:44 am

Glorious wrote:
Because all games beyond this point are going to be large address aware. Most games before this point don't use 2GBs, and the few that do are new enough that they're going to get patched. That will buy us at least a year or two, and, by then, games are just going to be compiled 64bit as a requirement anyway.


It may be a theoretically better way of doing things for logical separation of processes, but practically it crushes backward compatibility. Also you are missing the point on the totals. Your game doesn't need to address 2GB to run into problems. With vista and a 1GB VRam card, you run into trouble addressing a mere 1GB. This is the critical issue.

Backward compatibility mode is a necessity when you drastically gut a resource like this.

Forge wrote:
Jesu Christe.... If it's mapping to app address space *only*, that's really ultra-mega-bad news!

I'm wondering how I got two 7950GX2s to even boot on Vista32. That's 2GB of VRAM, so app address space should have been entirely exhausted before any app even ran!


SLI memory doesn't quite work the same way. I would bet that dual GX2s only end up working like 512MB. The real killer is native 1GB cards.
 
Glorious
Gerbilus Supremus
Posts: 12343
Joined: Tue Aug 27, 2002 6:35 pm

Thu Jul 26, 2007 1:35 pm

Forge wrote:
I'm wondering how I got two 7950GX2s to even boot on Vista32. That's 2GB of VRAM, so app address space should have been entirely exhausted before any app even ran!


That's because SLI doesn't double (or quadruple) your VRAM. Each of those GPUs need to have the same data in their local memory in order to render their portion of the frame. Since this data is essentially being duplicated Vista probably only allocates a maximum of 512MB of virtual address space for your two 7950GX2s.

snowdog wrote:
It may be a theoretically better way of doing things for logical separation of processes, but practically it crushes backward compatibility. Also you are missing the point on the totals. Your game doesn't need to address 2GB to run into problems. With vista and a 1GB VRam card, you run into trouble addressing a mere 1GB. This is the critical issue.


Getting rid of NTVDM crushes backwards compatibility too. Far worse, if you ask me.

Anyway, you're kind of misrepresenting the problem. You make it seem as if once you start the game you've lost half of the address space immediately. It's not like that. Only the VRAM that's actually allocated uses up the virtual address space of the process. That's why you don't see every process on a system with a 2900XT 1GB starting up with 1GB of virtual address space being used.

So, this is really only a problem with newer games, newer games that are going to be patched to use "large address aware" anyway. In a few years, games will all have native 64-bit executables. This really isn't anywhere near the "practical" problem you purport it to be.
 
snowdog
Gerbil First Class
Posts: 111
Joined: Sat Jan 04, 2003 4:11 pm
Location: Ottawa, Canada

Thu Jul 26, 2007 1:52 pm

Glorious wrote:
only a problem with newer games, newer games that are going to be patched to use "large address aware" anyway. In a few years, games will all have native 64-bit executables. This really isn't anywhere near the "practical" problem you purport it to be.


Large Address Aware is hardly a panacea. You then still need to adjust the userspace to be larger than stock 2GB and that brings with its own set of problems. AT was reporting anything other than the stock 2GB setting was netting them occasional BSOD.

The "in a few" years 64bit will solve all our problems is fine and dandy, but until "a few years" is up Microsoft should provide a workaround. Also 64bit is hardly growing by leaps and bounds. HP/Dell (#1 and #2) don't even seem to allow you to choose Vista64. The vast majority of Vista Shipping is 32 bit. I assume other top tier OEMs are doing the same.

Of course I have my solution, I am sticking with XP for the foreseeable future. But the vast majority getting a new computer with Vista32 don't have a reliable solution for that lost address space.
 
Glorious
Gerbilus Supremus
Posts: 12343
Joined: Tue Aug 27, 2002 6:35 pm

Thu Jul 26, 2007 2:20 pm

snowdog wrote:
Large Address Aware is hardly a panacea. You then still need to adjust the userspace to be larger than stock 2GB and that brings with its own set of problems. AT was reporting anything other than the stock 2GB setting was netting them occasional BSOD.

The "in a few" years 64bit will solve all our problems is fine and dandy, but until a few years Microsoft should provide a workaround.

Of course I have mine, I am sticking with XP for the foreseeable future. But the vast majority getting a new computer with Vista32 don't have a reliable solution for that lost address space.


Yeah, I'll admit that all this time I've been thinking about Vista 64-bit and ignoring how in Vista 32-bit this really is a problem. Sorry about that. I kind of totally forgot how most people use Vista 32-bit.

I guess the answer is as you already said: Avoid 32-bit Vista like the plague. I'm still dubious as to whether or not a work-around is really plausible, we're talking about deep, deep differences in how XP handles graphics versus how Vista does.

I think the price of having 32-bit Vista suck for serious gaming is small compared to the advantages of superior driver model, but you are absolutely right in that it's going to be a problem for a couple years. Especially since Vista 32-bit is so prevalent in OEMs and because most people won't understand the problem.
 
Shinare
Gerbil XP
Topic Author
Posts: 418
Joined: Wed Jul 06, 2005 12:48 pm

Thu Jul 26, 2007 2:26 pm

I guess the practical side of all this theoretical arguing is that I am running an 8800GTX on Vista x64 and have not run into a problem yet. I'm running WiC at very high settings and not even so much as a hiccup. All my older games like BF2, NFS:MW and NFS:C, UT2k4, HL2, etc are all set to maximum settings and none have crashed.

I'm not sure how much of a real-world problem this is, however, there is one very simple solution and one slightly less simple, but still not bad at all. The first: Turn down your video settings a notchin games that are causing a problem. The Second: Run Vista x64 and hack your exe (if its not already "aware").
 
murfn
Gerbil Elite
Posts: 517
Joined: Thu Aug 31, 2006 8:18 am

Thu Jul 26, 2007 2:49 pm

I am glad you are seeing the positive side of your acquisition again. Do me just one favor - don't scale back your graphics and let us know if you encounter any problems. Go for 2. if needed, FTW.
 
Forge
Lord High Gerbil
Posts: 8253
Joined: Wed Dec 26, 2001 7:00 pm
Location: Gone

Fri Jul 27, 2007 12:36 am

snowdog wrote:
Forge wrote:
Jesu Christe.... If it's mapping to app address space *only*, that's really ultra-mega-bad news!

I'm wondering how I got two 7950GX2s to even boot on Vista32. That's 2GB of VRAM, so app address space should have been entirely exhausted before any app even ran!


SLI memory doesn't quite work the same way. I would bet that dual GX2s only end up working like 512MB. The real killer is native 1GB cards.


No, I don't believe that is the case. SLI happens at a much higher logical level than memory addresses. The OS recognizes and loads drivers for each GPU independently. If Vista is mapping all video RAM to application address space, I should not be able to boot any 32 bit OS with all four GPUs in.
Please don't edit my signature for me. Thanks.
 
Ryu Connor
Global Moderator
Posts: 4369
Joined: Thu Dec 27, 2001 7:00 pm
Location: Marietta, GA
Contact:

Fri Jul 27, 2007 1:26 am

There seems to be alot of uncertainty here about how Vista actually handles the virtual address ranges for video memory. So I did some digging on MSDN and found the relevant section.

Video Memory Management and GPU Scheduling:
http://msdn2.microsoft.com/en-us/library/ms801508.aspx

Linear Memory-Space Segments:
http://msdn2.microsoft.com/en-us/library/ms801198.aspx

Mapping Virtual Addresses to a Memory Segment:
http://msdn2.microsoft.com/en-us/library/ms801469.aspx

Paging Video Memory Resources:
http://msdn2.microsoft.com/en-us/library/ms801506.aspx

Unlike the Microsoft Windows 2000 Display Driver Model, the Windows Vista display driver model allows more video memory resources to be created than the total amount of physical video memory available, which are then paged in and out of video memory as necessary. In other words, not all video memory resources are in video memory simultaneously.

The GPU can have multiple DMA buffers in its pipeline. The video memory resources that are referenced by these active DMA buffers must be in video memory. Other idle video memory resources can be paged out to system memory.

[...]


Not a programmer and never writen a video driver before so most of this is outside my ability to comment. More or less creates more questions.

So essentially the extra virtual address space we're seeing in Vista is just for paging/swap?

If that's true it would seem the amount of unused video data that a game accumlates over time would influence the size of the virtual address range.

Some applications would be worse offenders than others I'd think.
All of my written content here on TR does not represent or reflect the views of my employer or any reasonable human being. All content and actions are my own.
 
murfn
Gerbil Elite
Posts: 517
Joined: Thu Aug 31, 2006 8:18 am

Fri Jul 27, 2007 5:47 am

Forge wrote:
No, I don't believe that is the case. SLI happens at a much higher logical level than memory addresses. The OS recognizes and loads drivers for each GPU independently. If Vista is mapping all video RAM to application address space, I should not be able to boot any 32 bit OS with all four GPUs in.

I suggest that Vista associates a GPU with a display and reserves virtual address space for that GPU only. The other GPU's would not be associated with a display and hence would not require virtual address space reserved for them. In a 4 GPU SLI setup you would need virtual address space with respect to one GPU only (512MB).

Ryu Connor wrote:
If that's true it would seem the amount of unused video data that a game accumlates over time would influence the size of the virtual address range.

Some applications would be worse offenders than others I'd think.

As you progress through the game, new GPU resources are allocated and unused ones should be freed. A game that forgets to free unused resources is buggy, and the offense is callled a 'memory leak'.
 
Forge
Lord High Gerbil
Posts: 8253
Joined: Wed Dec 26, 2001 7:00 pm
Location: Gone

Fri Jul 27, 2007 4:07 pm

murfn wrote:
Forge wrote:
No, I don't believe that is the case. SLI happens at a much higher logical level than memory addresses. The OS recognizes and loads drivers for each GPU independently. If Vista is mapping all video RAM to application address space, I should not be able to boot any 32 bit OS with all four GPUs in.

I suggest that Vista associates a GPU with a display and reserves virtual address space for that GPU only. The other GPU's would not be associated with a display and hence would not require virtual address space reserved for them. In a 4 GPU SLI setup you would need virtual address space with respect to one GPU only (512MB).


That is a very logical and fascinating theory. Basically Vista is mapping VRAM to app address space not by device but by display. That could explain it.
Please don't edit my signature for me. Thanks.
 
murfn
Gerbil Elite
Posts: 517
Joined: Thu Aug 31, 2006 8:18 am

Sat Jul 28, 2007 2:47 am

I would further propose that it does so for the very reason I gave originally. The reason why the VRAM is reserved is so that there is a region of virtual address space into which the processes GPU resources can be swapped when another process takes over control of the GPU. In that way the other process can use all the GPU memory without worries. The reason for doing this is stability and not security (as some MS documentation may suggest). And in the interest of stability, all the GPU's VRAM is reserved when the process is created (i.e. at app launch time). Otherwise, when swapping time arrives there could be a shortage of contiguous virtual address space. Only GPU's driving a display are treated this way. A failure to allocate GPU memory to hold the display area of a new window will prove fatal to most applications.
 
Shinare
Gerbil XP
Topic Author
Posts: 418
Joined: Wed Jul 06, 2005 12:48 pm

Mon Jul 30, 2007 4:05 pm

I've pretty much talked myself into going back to Windows XP for now. My 8600GTS in vista x32 is now getting better frame rates than my 8800GTX in HL2:LC.
 
murfn
Gerbil Elite
Posts: 517
Joined: Thu Aug 31, 2006 8:18 am

Tue Jul 31, 2007 5:17 am

Shinare wrote:
I guess the practical side of all this theoretical arguing is that I am running an 8800GTX on Vista x64 and have not run into a problem yet. I'm running WiC at very high settings and not even so much as a hiccup. All my older games like BF2, NFS:MW and NFS:C, UT2k4, HL2, etc are all set to maximum settings and none have crashed.

I don't understand your latest move. Are you having problems running HL2 in Vista x86_64? Is your 8600GTS faster than your 8800GTX in Vista x86_64, or is the problem with Vista x86 (i.e.32 bit)?
 
Shinare
Gerbil XP
Topic Author
Posts: 418
Joined: Wed Jul 06, 2005 12:48 pm

Tue Jul 31, 2007 8:40 am

I'm not having "problems" as much as its not blazingly fast. Like I said, I have an MSI 8600GTS OC in pretty much an identical computer. That computer has an E6420, a P965 based motherboard, 2GB of RAM, a single 320GB HDD and DVD burner with a 500W PSU. In the HL2:LC video stress test it gets ~96fps and its running Vista x86 (I hate that 32bit is referred to as x86 and 64bit is x64, I'd rather it be x32 and x64, heh). Anyway, My computer, an E6420 on a P35 based mobo, 2GB of ram, 2x 320GB HDDs, DVD burner, and an 8800GTX with 550W PSU, get a whopping 96fps on HL2:LC video stress test under vista x64. That just doesnt seem right. It might be time to go back to XP. I havent done it yet, but I still might. I just find it a little idiotic to have DX10 capabilities and not be able to even use them because of the OS. But as it stands now, WiC beta is the only game I play right now that has DX10.
 
murfn
Gerbil Elite
Posts: 517
Joined: Thu Aug 31, 2006 8:18 am

Tue Jul 31, 2007 12:59 pm

You are getting ~96fps on both. The systems appear equally capable with the exception of GFX card. The reason why you are getting the same performance could be because the CPU is the bottleneck. Try increasing the resolution, or decreasing it, to see if that makes a big difference to the fps.
 
Shinare
Gerbil XP
Topic Author
Posts: 418
Joined: Wed Jul 06, 2005 12:48 pm

Wed Aug 01, 2007 10:36 pm

Well, Need for Speed Most wanted and BF2 were both crashing my computer. I figured it was my OC as at stock (for some strange reason) they were working. While looking at the error I was getting in BF2 I meandered my way thorugh google only to find this exact problem as the culprit.

I hacked the EXE's with the /LARGEADDRESSAWARE flag as instructed, applying that to both programs, and I haven't crashed yet. Even at 3GHz.

So, long story short, I guess this is a pretty significant problem. At least f you have a high memory vid card and vista.

Edit: at 3GHz my Lost Coast vid stress test at 1680x1050 is 107avg but gets pretty choppy in places. I had forgotten that the 8600GTS was stress testing at 1280x1024. I guess that kinda explains the reason why they have the same frame rates. The 8800GTX gets 122avg at that same res.
 
murfn
Gerbil Elite
Posts: 517
Joined: Thu Aug 31, 2006 8:18 am

Thu Aug 02, 2007 5:34 am

Were NFS Most Wanted and BF2 crashing on Vista x86 or Vista x86_64? According to my understanding the /LARGEADDRESSAWARE flag will only help you if you have more than 2GB of free virtual address space at application launch. With your 8800GFX you don't have that on Vista x86, but you do on Vista x86_64. It is curious however that BF2 and NFS are so intensive that they need more than 2GB of virtual address space. If they do, then IMO the problem has more to do with Vista being a heavier OS than with the virtualization of your GFX card memory.
 
Shinare
Gerbil XP
Topic Author
Posts: 418
Joined: Wed Jul 06, 2005 12:48 pm

Thu Aug 02, 2007 8:10 am

Correct, the large address aware flag will only help if you have address space available above 2GB. This will only happen if you tell 32bit windows to give you more app address space at the cost of kernal space OR you run 64bit versions of Windows. If I understand it correctly, 64bit flavors of windows already have the kernal above 4GB leaving 4GB of app address space. But I guess I thought that just running windows x64 would fix the problem. It doesnt. It does give you a better way of having more application address space. But you still have to make the programs aware that they can use that large space if they are not already.
 
murfn
Gerbil Elite
Posts: 517
Joined: Thu Aug 31, 2006 8:18 am

Thu Aug 02, 2007 12:56 pm

I am saying it will not help you in Vista x86 because:
(system_reserved_address_space+ GFX8800) > 2GB
=> min(2GB,4GB - system_reserved_address_space) < 2GB
so you cannot have more than 2GB of virtual address space no matter what you do in 32bit Vista.

For Vista x86_64 /LARGEADDRESSAWARE gives you up to 4GB (instead of 2GB). Without it you get 2GB, which is more than you get for Vista x86 above. I am surprised, though, that GB2 and NFS require more than 2GB. If so, I attribute it to the generally bigger overhead required by Vista and not the GFX card.
 
nerdrage
Graphmaster Gerbil
Posts: 1314
Joined: Thu Mar 06, 2003 2:49 pm
Location: Raleigh, NC

Thu Aug 02, 2007 1:42 pm

Shinare wrote:
I hate that 32bit is referred to as x86 and 64bit is x64, I'd rather it be x32 and x64

I agree -- it would be easier to follow this discussion if we referred to them as Vista32 and Vista64. The x86 is unnecessary and confusing.
i5-9600K · Z390 Aorus Pro · 16GB G.Skill DDR4-3200 · MSI TwinFrozr HD7850 · Intel 760p 512GB · WD 1TB · HP ZR24w · Corsair VX450 · Antec Solo · Win10/Ubuntu 18.10
 
Shinare
Gerbil XP
Topic Author
Posts: 418
Joined: Wed Jul 06, 2005 12:48 pm

Thu Aug 02, 2007 2:58 pm

murfn wrote:
I am saying it will not help you in Vista x86 because:
(system_reserved_address_space+ GFX8800) > 2GB
=> min(2GB,4GB - system_reserved_address_space) < 2GB
so you cannot have more than 2GB of virtual address space no matter what you do in 32bit Vista.

For Vista x86_64 /LARGEADDRESSAWARE gives you up to 4GB (instead of 2GB). Without it you get 2GB, which is more than you get for Vista x86 above. I am surprised, though, that GB2 and NFS require more than 2GB. If so, I attribute it to the generally bigger overhead required by Vista and not the GFX card.


If you are saying that in 32bit operating systems the large address aware flag will not help regardless, then you are incorrect. BUT, in addition to the flag, you do need to modify windows to increase the amount of virtual address space for applications above 2GB but this is at a cost to the amount of virtual address space for the kernal which isn't a good thing.

Edited for clerification.
 
murfn
Gerbil Elite
Posts: 517
Joined: Thu Aug 31, 2006 8:18 am

Fri Aug 03, 2007 7:05 am

If (system_reserved_address_space+ GFX virtual) = 1.5GB then:
min(2GB,4GB - system_reserved_address_space) = 2GB.

If (system_reserved_address_space+ GFX virtual) = 1.5GB and you configured Vista32 to allow users access to virtual address space up to 3GB, then:
min(3GB, 4GB - system_reserved_address_space) = 2.5GB.

Therefore, with a suitably less endowed GFX card, you can benefit from 'Large Address Aware' on Vista32 provided you request the increase in user allocatable virtual address space. With your GFX8800 (system_reserved_address_space+ GFX virtual) > 2GB and so Vista32 will not benefit from "Large Address Aware" regardless of what you do. Vista64 is an entirely different story, since 4GB (= 2^32) is replaced by 2^64 in the above formula.
 
Shinare
Gerbil XP
Topic Author
Posts: 418
Joined: Wed Jul 06, 2005 12:48 pm

Fri Aug 03, 2007 11:02 am

Thats still incorrect. (your l337 psudo code is less than helpful) You can still benefit from the flag in Vista x32 if you increase the available virtual address space, just like in XP. But again, its at the cost of Kernal address space. And you are still going to run out eventually depending on the amount of memory you add to the app space.

You are not adding the video memory TO the 2GB of application space, you are consuming the amount of memory of your vid card FROM the total 2GB of app space leaving less for applications to use. Increasing the size of the app space will allow you to load more things into memory, but those thigns have to be aware that they are possibly being loaded above 2GB and hence the large address aware flag.
 
murfn
Gerbil Elite
Posts: 517
Joined: Thu Aug 31, 2006 8:18 am

Fri Aug 03, 2007 1:26 pm

Just like any application you launch, the OS kernel runs in its own process. The zeroth process, if you will. Just like any process, the kernel process has its own virtual address space - 4GB on Vista32, 2^64 on Vista64. Kernel address space is the virtual address space for the kernel process.

An application process has its own virtual address space. 4GB if it is a 32 bit process, and 2^64 if it is a 64bit process. Virtual memory is reserved by functions such as 'VitualAlloc', with the MEM_RESERVE flag set in the function call. Traditionally when such a call was made by an application, the returned memory address range would be in the low 2GB. The top 2GB was reserved for system use. The top 2GB is not kernel address space. The virtual address space required to virtualize the GFX VRAM is reserved from the top 2GB if possible and it is done for system use. If the top 2GB is insufficient, some of the virtual address space reserved for system use has to be allocated from the bottom 2GB. This is done when the application is launched and before the application gets to start running. With your 8800GFX I estimate the spillover to be some 200MB. That means that on Vista32 applications are left with less than 2GB from which user allocations can be made. Hence, setting your OS to allow allocations from say 3GB and below will not help. All the virtual address space above 2GB is already reserved by the system, and some of the virtual address space below 2GB is also reserved by the system (assuming no holes).

My formula is not pseudo code. It is a mathematical representation of my understanding of the concepts underlying Anandtech's articles. While I thought those articles are excellent, I understood that the writers are reporters and do not pretend to have a technical understanding of the operations of an OS. I hope what I have written here will act to supplement those articles with some of my technical understanding. Whatever additional content you find in my text is not necessarily wrong because it is not part of those articles. Before you formulate an opinion regarding whether what I am saying is correct or not, examine your own understanding to see whether, perhaps, you do not have a real technical understanding of this particular topic.

I am willing to debate any issue and I do not force the assertion that everything I write is fact and must be accepted blindly. But such a debate should at least recognize me as an equal and not somebody with inferior knowledge requiring peer approval.
 
Skelshy
Gerbil
Posts: 16
Joined: Tue Jun 12, 2007 8:48 pm

Fri Aug 03, 2007 1:59 pm

I'd like to note it takes a game to be bugged to crash when it is out of memory. If it's solidly written it will not crash. Memory allocation is not guaranteed not to fail.
 
murfn
Gerbil Elite
Posts: 517
Joined: Thu Aug 31, 2006 8:18 am

Fri Aug 03, 2007 3:23 pm

A game that runs out of memory resources, virtual or physical, should recognize the problem and terminate gracefully, hopefully with a message explaining the problem. It is good programming practice to test all allocation requests for success.

Who is online

Users browsing this forum: No registered users and 1 guest
GZIP: On