Path: chuka.playstation.co.uk!news From: "Martin Keates" Newsgroups: scee.yaroze.freetalk.english Subject: Re: How the texture cache works Date: Fri, 14 Sep 2001 03:02:01 +0100 Organization: PlayStation Net Yaroze (SCEE) Lines: 49 Message-ID: <9nro9d$8cu2@www.netyaroze-europe.com> References: <99r1f2$dkq1@www.netyaroze-europe.com> <9nqo7h$2qp5@www.netyaroze-europe.com> NNTP-Posting-Host: modem-934.barracuda.dialup.pol.co.uk X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.50.4133.2400 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4133.2400 Oh blimey, now I have to remember what I did... > Do you have timings for 4-bit textures? Yeah. I don't have them to hand, but as I said before they are the same as 16-bit with no misses (for either) and with less of a performance loss with them. But these results are probably bogus anyway. > When you give timings for 'all misses', is that just the t-cache or does > that include the CLUT cache? i.e. did you switch the CLUT position when you > switched the texture? For the 8-bit case the CLUT position was switched too (both CLUTs were identical but had different frame buffer locations). For the 'no misses' case a single CLUT was used. I can't work out whether the CLUTs were different or not for the 4-bit case (I have some tims where they are the same and some where they are different, and I can't work out which ones I used for which tests). I didn't really consider the CLUT cache to be honest. I would expect the CLUT cache to compound on top of slow-downs due to texture cache misses. But clearly I need to do more tests to check this, and I need to redo the 4-bit tests. > I'd be interested to see the actual textures used in the tests, especially > the paletted ones. Did the 8-bit textures actually reference all 256 > colours? The reason I ask is because a 16x16x8 sprite with only 2 colours > actually referenced will generate 254 CLUT cache hits and only 2 misses, > whereas if all colours are used, there will be 0 CLUT cache hits and 256 > misses. That would make a big difference to the rendering time. Oh, this > all assumes the CLUT wasn't already in the cache of course. I knew it wasn't very scientific... :) The textures were the same for all cases. I used an checked pattern (filling every pixel) with four colours per sprite (I don't know why four. I probably had a good reason). Now I need to do some further tests with some more complex sprites. I'll have a look at comparing low colour with high colour 4-bit and 8-bit sprites. You're right, of course - a large number of CLUT cache misses are going to have a big impact. This is probably something that is very easy to avoid but certainly worth knowing about. Martin.