construct speed test (1 sprite, multiple instances)

New releases and general discussions.

Post » Sat Apr 11, 2009 12:36 am

I realize that this isn't the most practical test in the world, but I was curious how well construct performs and it also relates to a project I'm working on with fake vector objects built from very few sprites. I thought some might be interested in the results

basically there is a sprite 512x512
it creates a new instance of the sprite in a random spot every tick
it also moves every existing instance and rotate it randomly every tick

there is text to keep track of the number of instances, and the remaining vram
I used fraps to keep track of frame rate

here are the results:
up to 1000 instances of the sprite(60 frames per second)
at 1000 instances the frame rate drops immediately to 30 frames per second
at 2000 it begins to drop slowly and by 2300 its around 20
after 2500 instances it goes to 15 and drops steadily

on a blank project of construct I have 252.2 vram remaining
on this project I have an unwavering 251.8 vram remaining
as many of you knew, the increasing number of instances has absolutely no effect on vram

if anyone wants to try this on their system, please post your results and system specs
I'm curious to see if the 1000 and 2000 marks are a steady point of decline on all systems

[url:3j7yi977]http://www.fraps.com/setup.exe[/url:3j7yi977] <-this will track your framerate accurately(for any directx software)

this is the cap


my system specs
athlon x2 4.2
4 gigs of ram
vista 64
geforce 8800 gts 256mb ram

also, as a side note, I tried the same project with tintplus applied to every sprite, regardless of whether you just have it on, or whether you're changing the tint every tick the frame rate drops rapidly from the beginning and is below 20 before I got to 650 instances
Spriter Dev
B
87
S
21
G
12
Posts: 3,240
Reputation: 16,461

Post » Sat Apr 11, 2009 12:47 am

you could also set the application to 'unlimited framerate' to measure the performance impact with higher granularity.
B
2
S
2
G
4
Posts: 171
Reputation: 1,792

Post » Sat Apr 11, 2009 12:51 am

Getting 20 from about 700 and it doesn't go lower after that.
B
6
S
3
G
6
Posts: 219
Reputation: 3,013

Post » Sat Apr 11, 2009 12:11 pm

In speed tests I usually measure how many objects I can get before I hit V-sync rate (for me, 75 fps). I can get about 1000 here. You should be careful when using events in speed tests, because rendering simple sprites is trivial for the GPU, so you might end up CPU capping your test with the for each loop.

I'm on an 8800GT with the in-development version of 0.99, which has a faster renderer. I get no sudden drops, it steadily falls from 75fps at 1000 to about 35fps at 2000 which is what you'd expect.
Scirra Founder
B
359
S
214
G
72
Posts: 22,946
Reputation: 178,478

Post » Sat Apr 11, 2009 12:13 pm

I'm not convinced you'd ever want to move more than a couple of 512x512 sprites around every frame, so maybe this isn't an accurate test?

Speed testing isn't a generic thing where you can deem one engine faster than another, because they're often optimized to deal with situations that occur in games, not in random tests.
B
3
S
2
G
5
Posts: 1,777
Reputation: 5,529

Post » Sat Apr 11, 2009 12:14 pm

Rich is right, if your game uses mostly smaller sprites, the GPU cache will perform much better. Your test should as closely resemble a real world situation as possible.
Scirra Founder
B
359
S
214
G
72
Posts: 22,946
Reputation: 178,478

Post » Sat Apr 11, 2009 2:01 pm

Please fill in my ignorance and correct me if I'm wrong.

So the FPS/speed depends on the graphics that are displayed/moved/animated/rendered-with-effects on the screen which is managed by the GPU? Does Eventing/cpu-related-stuff contribute a much to the speed?
B
16
S
10
G
5
Posts: 255
Reputation: 3,934

Post » Sat Apr 11, 2009 2:39 pm

It should all be explained in the Optimisation Tips article.
Scirra Founder
B
359
S
214
G
72
Posts: 22,946
Reputation: 178,478

Post » Sat Apr 11, 2009 2:41 pm

It depends if your CPU is capped, as to whether it is affecting performance. You can see in the debugger if it is, under 'CPU waiting'.
B
3
S
2
G
5
Posts: 1,777
Reputation: 5,529

Post » Mon Apr 13, 2009 12:30 am

When i hit 1.2k i go slowly down from 60 fps to 30 and then when i hit 2k i get around 25 fps and at 3000 i get 20fps and now im at 4000 with 15fps
B
4
G
3
Posts: 39
Reputation: 1,003

Next

Return to Construct Classic Discussion

Who is online

Users browsing this forum: No registered users and 2 guests