GPU Virtual Memory (GPU Paging)

Anything and everything that's related to OGRE or the wider graphics field that doesn't fit into the other forums.
Post Reply
User avatar
axon
Halfling
Posts: 41
Joined: Sun Jul 11, 2004 3:28 am
Location: Adelaide, Australia
Contact:

GPU Virtual Memory (GPU Paging)

Post by axon » Thu Oct 11, 2007 3:31 am

Does anyone know about GPU memory paging as supported by the 8800 and newer graphics cards?

I've been looking around and can't find many (any) details on whether the latest GPU's have 4GB address space (or more) of memory which is automatically paged by the graphics card drivers.

Some mention about massive memory space is mentioned in id's new engine:
id's Tech 5 Engine (GameTrailers.com)

I'd like to know whether I could rely on this feature of GeForce 8800's in order to have massive (more than 2GB) of volumetric data accessed by the GPU. Only 100's of MB would be needed in memory at any time for the rendering. Can the graphics driver transparently look after the rest or is there more that I would need to do (e.g. write a GPU memory manager (= not good))?

Any pointers to good documentation for this GPU feature would be highly valued.

I'm trawling nVidia's developer site as we speak. I'm sure I've seen a GDC presentation or something somewhere which mentions this feature.
0 x

User avatar
ScurvyKnave
Gremlin
Posts: 150
Joined: Mon Oct 10, 2005 5:57 pm
Contact:

Post by ScurvyKnave » Thu Oct 11, 2007 8:09 am

Hey there. I was discussing this just the other day, and I got handed these links:

http://www.ogre3d.org/phpBB2/viewtopic. ... egatexture

http://www.ogre3d.org/phpBB2/viewtopic. ... egatexture

To answer your question, you would have to write your own code and shaders to manage it. Id's Tech 5 Engine does this (Carmack calls it Megatexture), but he developed the technology to do so. Carmack has been pushing for this to be made a standard feature of graphics hardware for years. But as far as I know, he had no luck, which is why he just coded the functionality in himself.

I have no idea how it's done, but the links above should point you in the right direction. Then again, I doubt you're gonna want to even attempt it unless your coding abilities are fairly god-like. Carmack says it isn't all that difficult, but consider the source!
0 x

User avatar
axon
Halfling
Posts: 41
Joined: Sun Jul 11, 2004 3:28 am
Location: Adelaide, Australia
Contact:

Post by axon » Thu Oct 11, 2007 8:48 am

Cheers for the info. Megatexturing is good. But not exactly what I need. I guess this will become a feature of the Shader Model in years to come.

The texture formats & sampler specification for Shader Model 4.0 makes no mention of virtual mem or paging... so I guess it's still a pipe dream :cry:

Shader Model 4.0 (MSDN)

DirectX 11 maybe.
0 x

User avatar
sinbad
OGRE Retired Team Member
OGRE Retired Team Member
Posts: 19261
Joined: Sun Oct 06, 2002 11:19 pm
Location: Guernsey, Channel Islands
Contact:

Post by sinbad » Thu Oct 11, 2007 7:00 pm

Paging of textures by the drivers when the video card runs out of memory has been around for donkeys years. Don't expect to get any decent performance out of it though, when it happens, performance nose dives.

Virtual GPU resources in Dx10 are actually about eliminating the 'lost device' conditions that plagued Dx9 and previous versions and protecting the system from blue screening when the driver barfs. They're not about paging worlds efficiently for you.
0 x

Post Reply