[Freeciv-Dev] Re: Render speed test with imlib/xrender/sdl/pixbuf/ftwl
[Top] [All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: |
freeciv development list <freeciv-dev@xxxxxxxxxxx> |
Subject: |
[Freeciv-Dev] Re: Render speed test with imlib/xrender/sdl/pixbuf/ftwl |
From: |
Per Inge Mathisen <per@xxxxxxxxxxx> |
Date: |
Mon, 21 Mar 2005 21:35:38 +0000 (GMT) |
On Mon, 21 Mar 2005, Raimar Falke wrote:
> The task is to blit 4096 times a 100x100 png picture with alpha
> channel to a 320x320 png picture. The position varies based on a
> PRNG. Afterwards the result is shown to make sure that all produce the
> same results. This task was previously identified as the main
> bottleneck (about 80% of the CPU time) in the ftwl client.
>
> Results for my computer:
> Time: 0.310 sec for Imlib2 off-screen.
> Time: 0.584 sec for FTWL off-screen.
> Time: 1.169 sec for pixbuf off-screen.
> Time: 1.875 sec for Xrender on-screen.
> Time: 1.899 sec for Xrender off-screen.
> Time: 2.662 sec for SDL off-screen.
It looks like you forgot to change the SDL surface to the display format.
This would explain the poor SDL performance, most likely.
> If I disable the MMX support in imlib it produces
> Time: 1.184 sec for Imlib2 off-screen.
>
> Some remarks:
>
> It looks like SDL doesn't use MMX. I'm using however the rpm from
> fedora core 3.
This is a big problem. Many packages are compiled for the least common
denominator, and that excludes important optimizations like MMX/SSE/SSE2,
that make a big difference to things like this. So libraries that you
compile from source may optimize a lot better for your specific computer,
but this might be a deception. Once your program is out being distributed
as everything else, your careful optimizations that depend on CPU-specific
instructions may also be thrown to the wind.
> Also note that I can only say that ftwl is used correctly. Please
> suggest any other improvements of the usage of the other libs.
> Bottom line: Client (as in X11) side rendering doesn't get you a lot
> faster. A bit with MMX. Xrender as an interface for server side
> rendering isn't a good one. If this test can be done using OpenGL or
> any other interface I would like to know.
I will take a closer look.
- Per
|
|