Animation slowdown, please help test

Hi guys,

I need some help testing an issue with the cpu animation system. I’ve found that there is a sudden increase in animation time when the number of actors cross a certain (computer, actor dependent) threshold. For example, on my Core 2 Duo (2.8ghz) and using the following test file

megaupload.com/?d=05GSDDMR

actors FPS
5 800
15 500
16 60 <—!!!
20 44.2

The threshold can vary, but it’s generally about a dozen actors. Different actors have different trigger thresholds.

I would appreciate it, if you could run the test.py and post your results (number of actors that cause a sudden jump in animation time, cpu secs, OS) so that we can understand the issue better.

Thanks!

Zhao

1 actor, 1200 fps
3 1100
5 1000
15 750
30 420
60 265
80 120
90 65
100 50
110 40
150 24
200 18
300 12
500 7
I am using my own build from the repository (code is from a few weeks ago). I have threading disable in my build, as well as components I didn’t need disabled.

Running on Windows 7 64 bit. i7 2.2ghz (mobile)

Ok. Your un-threaded 2.2ghz mobile is killing my threaded 3.2ghz i2500k. I’ll have to try compiling without threads tomorrow and see what happens.

C2Duo 3ghz :

20 100fps
40 40fps
80 17fps

teedee your computer is a monster :smiley:

panda compiled from buildbot version as well. I may have better scores in windows.

EDIT : I had same slowdown problem with panda model x 20 for fur, if you use hardware instancing it should give far better framerates.

Core i5 @ 2.4GHz mobile, with Intel GPU:

5 - 280 FPS
10 - 150 FPS
20 - 70 FPS
30 - 42 FPS
40 - 29 FPS
50 - 24 FPS
60 - 20 FPS
70 - 16 FPS

Panda 1.7.2, Windows 7 64bit

Intel Pentium Core 2 Duo E4600 @ 2.40 GHz
GeForce 7300 GS
Panda 1.8 buildbot (Win XP x32)

5 - 625
15 - 385
25 - 240
35 - 150
45 - 75
55 - 42
65 - 28

+10 actors ~ FPS/1.6


Another system
Intel Pentium Dual CPU E2180 @ 2.00GHz
ATI Radeon HD 4850
Panda 1.7.2 (Ubuntu 11.04 x32, Compiz)

5 - 280
15 - 185
25 - 110
35 - 60
45 - 35
55 - 25
65 - 22

AMD Athlon 64 X2 5200+, Ubuntu 10.10 32 bit.

actors - FPS
20 - 300
30 - 190
40 - 70
50 - 40
60 - 27
70 - 23
80 - 20

20 - 670
40 - 325
60 - 100
80 - 35
100 - 25
120 - 21
140 - 18
160 - 16
180 - 14
200 - 13

i5 @ 2.67
nVidia GeForce GTX 460

10 - 268
30 - 197
50 - 158
100 - 73
250 - 17
500 - 8

Panda 1.8 (not multi-threaded).
AMD Athlon™ II X2 250 @ 3Ghz.
ATI Radeon HD 5450.
64-bit Ubuntu Linux.

Cheers,
Gary

1 -- 1650
5 -- 1050
10 -- 510
12 -- 340
13 -- 260

14 -- 189
15 -- 85

16 -- 60
17 -- 54
18 -- 49
20 -- 43
25 -- 32
50 -- 16

Panda 1.8, buildbot 26-11-2011
Core i5 760 @ 2.8
NVidia GTX 460 OC
64 bit Ubuntu 10.10

I havent looked at the code, but I remember some detail that if the animation state does not need to get updated, panda would not recompute the state. Thus, if the frame rate for the animation is below the frame rate for rendering, you can slip a few frames in without doing any more animation. That would explain major changes in frame rate based on animation speed and other load on the renderer.

Right. :slight_smile:

David