All posts tagged with "I drank Brian Hook’s bourbon of power and all I got was this hangover"

And a Happy New Year

DodoRun

Run little dodo, run! (Mr. Triolo was having fun animating this guy before he left for the holidays, as you can see.)

.. Hello? Anyone here? No?

Then I guess it’s just me on the job today. Everyone else is still on vacation.

I suppose I could be persuaded to share a couple tidbits in a short post. You guys have been terribly patient over the holidays so I guess you’ve earned it.

(And this is what I get for falling to The Plague and taking weirdly offset vacation time. On the up side, I used a pitcher of week-old coffee to ¬†anoint myself lead programmer and used my new-found sense of intellectual invincibility to write some absolutely fascinating Lua script to convert our Lua entity definitions to XML readable by the UI system so that we can display commodities in UI widgets. I’m hyperventilating just writing about that one.)

(No, but seriously: Regular expressions! Oh man.)

{ read this article }

Posted in Clockwork Empires | Tagged , , , , , , , ,
10 Comments

CPU and GPU Run-time Profiling in Simulation Land

[Warning: This is a very technical post.]

It’s not easy writing a complicated simulation. There are lots of complex, interconnected moving parts to worry about and when something goes wrong, it can be hard to figure out where that small, broken thing is in the midst of a larger picture. We recently discovered that the game was running… unreasonably slowly, shall we say? My desktop was getting 15 FPS, and it wasn’t clear what the problem was. On Chris Whitman’s machine, which uses a slightly different graphics card than my computer, our FPS was in single digits. I don’t like optimizing too early – as Donald Knuth pointed out famously, “premature optimization is the root of all evil” – but something was going on. Finally, sick and tired of the problems, I decided to get some answers.

There were three solutions for profiling that we looked at: Intel’s VTune, what we might call a ‘classical’ profiler which you can download a 30-day trial of from their website, and Telemetry, a different sort of profiler made by RAD Game Tools (specifically by Brian Hook, who you might know from such games as Quake 3.) RAD Game Tools also provided us with a 30-day trial of Telemetry, and this gave me an interesting opportunity to compare two profilers. Finally, we tried our luck with NVidia’s GPU Perfstudio to see if we could figure out what was happening on the graphics card.

Three profilers. One slow down. Who cracked the mystery? Find out below.

These actually have nothing to do with what Nicholas is doing but It Was Decided that the post needed some more visual accompaniment. Think of it as a tenuous thematic connection.

{ read this article }

Posted in Clockwork Empires, Programming | Tagged , , , , , , , , , , ,
19 Comments