Felix Kühling wrote:
Am Montag, den 07.02.2005, 12:14 +0000 schrieb Keith Whitwell:

Felix Kühling wrote:

Am Montag, den 07.02.2005, 09:20 +0000 schrieb Keith Whitwell:


btw texdown showed that texture transfers to card memory are faster than to AGP memory, but not by very much (something like 100MB/s vs. 140MB/s in the best case, though the numbers I got fluctuated quite a bit).

How are AGP texture uploads being done?

The card memory uploads are actually done via agp buffers - ie the data is written by the driver to agp memory, the card then copies that to card memory. If the AGP case is the same, the data probably travels up to the card and then back down again to AGP memory, accounting for the relative slowdown.

One benefit of using the card to do the up/downloads is synchronization with the graphics engine - if you were to write the texture data directly you'd have to have some extra mechanisms to ensure that the memory wasn't being used by commands still unprocessed by the GPU. This actually wouldn't be that hard to organize.


The Savage driver does this. Currently it waits for engine idle before
uploading a texture. I thought there must be some more efficient
(age-based) method. I havn't looked into the details yet. Do you have a
hint that would get me started in the right direction?


I'm still working on the age stuff, but the general strategy is to not release memory back into the pool until it is guarenteed no longer referenced. This means hanging onto it for a little while until perhaps the end of a frame or until the next time you notice the engine is idle.


The Savage driver doesn't have its own texture memory manager (you
claimed it had in your other reply). So there is no memory pool managed
by the kernel. I'm trying to do this with the current user-space shared
memory manager (texmem.[ch]). I think it'll be difficult to do what I
want without sacrificing driver-independence or breaking binary
compatibility of the sarea structures. I'll have to take a closer look
at this.

Ah, sorry - I had a braino: Sis and Savage - different different different. Oh well...


Yes, it doesn't make sense to try and incorporate this code at all. The texstore.c fixes should help with download of argb8888 textures, otherwise I don't have a lot new to offer...

Keith


------------------------------------------------------- This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting Tool for open source databases. Create drag-&-drop reports. Save time by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. Download a FREE copy at http://www.intelliview.com/go/osdn_nl -- _______________________________________________ Dri-devel mailing list Dri-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to