Jump to content
  • Advertisement
  • entries
    359
  • comments
    237
  • views
    189543

Pokey Redux

Sign in to follow this  
Telastyn

79 views

Or apparently I can :[

After looking a little closer today, it just appears to my inexperienced eyes to be a throughput issue. I actually made a mistake in the last post. There's ~1000 quads, not triangles, and then another ~350 d3dxtext.draw's.

I setup some quick profiling/benchmarking around the meaty render() functions, as well as networking, sound... The first number is the number of 'calls' and the second the number of milliseconds the entirety took.


5/8/2006 2:10:08 PM - mem:5139596 - d3d_image: 408429 15280.4987
5/8/2006 2:10:08 PM - mem:5139596 - d3d_text: 240200 12158.3334
5/8/2006 2:10:08 PM - mem:5139596 - Blinky: 734 20.2063
5/8/2006 2:10:08 PM - mem:5139596 - AFE: 17899 214.0526
5/8/2006 2:10:08 PM - mem:5139596 - mu: 11854 91.8056
5/8/2006 2:10:08 PM - mem:5139596 - fps: 11854 57.3444
5/8/2006 2:10:08 PM - mem:5139596 - netdisplay: 11854 76.866
5/8/2006 2:10:08 PM - mem:5139596 - Ellipsis: 131 1.6541

5/8/2006 2:10:08 PM - mem:5139596 - oob: 11854 60.7877
5/8/2006 2:10:08 PM - mem:5147788 - Total render: 11854 29395.6588
5/8/2006 2:10:08 PM - mem:5147788 - Sound: 11854 314.957
5/8/2006 2:10:08 PM - mem:5147788 - Network: 11854 5633.3275
5/8/2006 2:10:08 PM - mem:5147788 - App Time: 40069


The first group are the set of non-trivial renderers [that is ones that do work rather than just checking visibility and rendering children]. The last are rendering queued execs that need to be done out of frame, the total time in root.render(), total time in sound.Update(), total time in network.Update(), and total time between the top and bottom of Main.

In an ideal world, the top times would sum to "Total render" time; and the bottom four times would sum to App Time [plus time GC'ing, Initialization, thread switching to server, and handling user input]. They come close [27897 / 29395 and 35402 / 40069], so I'm inclined to think that I'm not missing some giant slowdown somewhere.

The average time per call seems reasonable too:

d3d_image: .038
d3d_text: .050
Blinky: .027
AFE: .011
mu: .007
fps: .004
net: .006


But just with the numbers:
1000 images * .038ms/image + 350text * .050ms/text = 55.5ms
1000ms/s * 1 frame/55.5ms = 18 frame/s

Pokey.

[boy is it nice to see the calculations back up the percieved performance!]
Sign in to follow this  


0 Comments


Recommended Comments

There are no comments to display.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!