On Sun, Sep 5, 2010 at 7:31 PM, Mikko Vartiainen <mvartiai...@gmail.com> wrote:
> On Sun, Sep 5, 2010 at 9:15 PM, Kurosu <kur...@free.fr> wrote:
>> Top callers are:
>> 95053    20.8283  libgcc_s.so.1            /lib/libgcc_s.so.1
>> 75516    16.5473  libSDL-1.2.so.0.11.1     BlitNtoNPixelAlpha
>> 41306     9.0511  libc-2.5.so              /lib/libc-2.5.so
>>
>> I'm a bit surprised by first one, as I'm not sure what is called; maybe
>> threads logic, but it would be surprising. For the libc call, it's
>> probably memcopies. Optimizing BlitNtoNPixelAlpha would be worthwhile,
>> but I think it's very general purpose (32 to 24, 24 to 16 etc). And
>> halving its execution time would only bring like 8% speedup, almost
>> negligible.
>
> I can try to install more debug symbols to more exact results.

Here is new profile with libgcc debug symbols. This was all computer
4x10 game with the patch from
https://mail.gna.org/public/wormux-dev/2010-09/msg00013.html

samples  %        image name               symbol name
65309    10.5653  libgcc_s.so.1            __aeabi_f2ulz
54560     8.8264  wormux
PhysicalObj::CollidedObjectXY(Vector2<int> const&) const
49115     7.9455  libc-2.5.so              /lib/libc-2.5.so
47516     7.6868  libstdc++.so.6.0.9       /usr/lib/libstdc++.so.6.0.9
40873     6.6122  no-vmlinux               /no-vmlinux
36580     5.9177  libSDL-1.2.so.0.11.1     BlitNtoNPixelAlpha
29140     4.7141  wormux                   SpriteAnimation::Update()
24646     3.9871  wormux                   long long
fixedpoint::float2fix<16>(float)
21034     3.4027  wormux                   Member::RefreshSprite(LRDirection)
19854     3.2118  libgcc_s.so.1            __udivsi3
18262     2.9543  libgcc_s.so.1            __aeabi_f2lz
16999     2.7500  libSDL-1.2.so.0.11.1     BlitARGBto565PixelAlpha
14120     2.2842  wormux
Sprite::SetRotation_rad(fixedpoint::fixed_point<16>)
13275     2.1475  libgcc_s.so.1            __divdi3
9178      1.4848  wormux                   SpriteCache::InvalidLastFrame()
7658      1.2389  wormux
Member::ApplyMovement(member_mvt const&, std::vector<c_junction*,
std::allocator<c_junction*> >&)
7310      1.1826  libgcc_s.so.1            .plt
7163      1.1588  wormux                   .plt
7161      1.1585  wormux                   Body::RefreshSprites()
6926      1.1204  libSDL_gfx.so.13.5.1     /usr/lib/libSDL_gfx.so.13.5.1
6074      0.9826  wormux
FireMissileWithFixedDurationIdea::CreateStrategy() const
5347      0.8650  wormux                   Body::Build()
5269      0.8524  libSDL-1.2.so.0.11.1     Blit2to2Key
4960      0.8024  wormux                   fixedpoint::fixsin16(long long)
4670      0.7555  libgcc_s.so.1            __gnu_ldivmod_helper
4198      0.6791  wormux                   Team::ReadEnergy() const
4109      0.6647  wormux                   Member::ApplySqueleton(Member*)
3767      0.6094  libgcc_s.so.1            __aeabi_uidivmod
3695      0.5978  wormux                   Tile::IsEmpty(Vector2<int>
const&) const
3478      0.5626  wormux
PhysicalObj::IsOverlapping(PhysicalObj const*) const
3374      0.5458  wormux                   Character::Refresh()

_______________________________________________
Wormux-dev mailing list
Wormux-dev@gna.org
https://mail.gna.org/listinfo/wormux-dev

Répondre à