[haiku-appserver] Re: Quite some room for improvement

  • From: "Rudolf" <drivers.be-hold@xxxxxxxxxxxx>
  • To: haiku-appserver@xxxxxxxxxxxxx
  • Date: Mon, 12 Dec 2005 21:56:57 +0100 CET

Hi Stephan (good evening),

> Ah, don't get me wrong. I was aware of it since I read in the stampTV 
> code 
> which must have been in 2001 or so. I just thought there would be a 
> difference in writing too, even with MTRR enabled. I never really 
> experimented with it that much.

If you look closely at the results, you'll find out that there _are_ 
speed diffs even with MTRR enabled. It just depends on what exact 
system you are looking... (try my laptop at 600Mhz or 1.6Ghz, look for 
8 and 32 bit writes)
It (again) boils down to some sort of fail-safe programming for worst 
case scenarios, so _every_ system gets maxed out.

It's nice to have all the options of combining parts of hardware in the 
PC industry, but it's a real bitch the same time as well :-/

> Now I'm still thinking about how to integrate this with the drawing 
> modes 
> of Painter, in a way that all this code duplication is removed too. 
> Is 
> there any particular speed penalty associated with using function 
> pointers? 
> I never used those on purpose before.

Pointers to functions is _the_ way to go (apparantly). Have a look at 
the world of MESA ;-)
No, there are no real speed penalties that I know of, it should just be 
an indirect call. Don't know about variables though. Axel??

Anyway: Mesa gaines its speed because of tricks like this. Want to know 
how to get speed, I suggest having a look there. Really :-)
(pointers are set according to drawing states so to speak)



Other related posts: