> 
> On 20 Sep 2001, Thayne Harbaugh wrote:
> > What's the best way for managing vram memory if there are many small
> > off-screen images?  I thought libgalloc could do this?
> 
> LibGAlloc takes a hands off approach to this, because it is very
> much a matter of preference: there are many different ways to manage
> your memory, some optimized for speed, some for utilization, some
> for convenience of use.  We didn't want to lock anyone in to any
> particular cache management system.
> 
> So how, you may ask, does a graphics allocator "allocate" VRAM 
> without providing a caching policy?  Good question, glad you
> asked :-)
> 
> LibGAlloc allows you to ask for a chunk of VRAM for a certain 
> purpose, with a certain geometry.  You can also ask for N identical
> chunks of VRAM, in a single LibGAlloc resource.  LibGAlloc will find
> the necessary VRAM, if it exists, and pass back information on
> where and how to access it.  This information includes a way to
> find the start addresses of each of the N chunks.
> 
> But what if you don't want identical sized chunks?  Another good
> question! :-)
> 
> LibGAlloc also allows you to request a "shared" resource.  When you do so,
> you tell it which resource to share storage with.  A shared resource uses 
> overlapping VRAM with that resource.  Say you send resource A asking for
> 200x200 textures and resource B asking for 100x150 textures.  Since you 
> are given exact information about the rules for placing the textures,
> you can develop your own caching strategy -- it is up to you to decide
> when/where the storage is used for A sized, vs B sized, resources.
> 
> In fact, as long as compatible storage types are available, and a resource
> does not flavor the VRAM so it is incompatible, LibGAlloc allows any type 
> of resource to share with any other -- so you can mix up 3d textures, 
> 2d Blts, etc. etc. as you see fit.  If we find that a given caching 
> strategy works well for a particular purpose, we can then provide an
> independent library to provide it.

All true. I just want to mention here, that libgalloc uses the range manager

internally to make sure, that as much images as possible fits into the VRAM.

(Just to avoid a misunderstanding, because of my previous mail :)



-- 
CU,

Christoph Egger
E-Mail: [EMAIL PROTECTED]

GMX - Die Kommunikationsplattform im Internet.
http://www.gmx.net

Reply via email to