Telemetry

Telemetry Performance Visualization System

Telemetry is RAD Game Tools' performance visualization system for optimizing and understanding your game's performance. It is unlike any other traditional profiler because of its emphasis on performance characteristics in relationship to time and game state, whole-team participation of optimization, always-on profiling, cross-platform support, and ultrafast integration.

Telemetry is a performance visualizer, so all your performance information is presented graphically -- why wade through rows of numbers trying to find patterns when Telemetry can show you those patterns?!

In addition to this Web page you can learn more about Telemetry by: reading what our customers think, checking out Telemetry's features, FAQ, and version history; reading the Telemetry blog; and following the Telemetry Twitter feed.

Game State vs. Performance

All good profilers can tell you that something took too long. Hey, RenderScene() took 80ms! While good to know, without any context it's meaningless. Telemetry addresses this by letting you provide vital additional information that helps you make sense of performance data:

What else was going on in the game?
When your game slows down you need to know what else was going on, not just that you were slow! Visible enemies, simultaneous sounds, texture memory in use, active lights, connected players -- this is the kind of information that impacts a game's performance, and with Telemetry you can see relationships between your game state and performance!
When did it happen?
Most profilers tell you that something was slow, but they usually can't tell you when things got slow. Telemetry shows you those spikes in frame time (i.e. hitches and hiccups) so that you can isolate the circumstances of poor performance. When something bad happens is just as important as knowing that it happened at all.
How are my threads behaving?
Telemetry shows you the relationship between your own threads: lock contention, stalls, starvation, and idle areas are all presented visually. Now you can see when one thread is interfering with another!
What else was going on in my system?
Telemetry offers additional forensic information to help you get to the bottom of performance issues. Telemetry can show you context switches -- see when threads migrate between cores (Windows 7) and when threads are swapped in and out by the scheduler (XBOX 360 and Windows). On Windows you can even see when other processes (virus scanners, updaters, music players, chat programs, etc.) preempt your game!

Modern game performance is incredibly complex, and optimization is no longer just about making one function faster. Telemetry tames that complexity and helps you discern patterns within your game's performance profile, which leads to more and better opportunities for optimization at a higher level.

Whole Team Participation

All this high level visualization means that the whole team, not just programmers, can contribute to optimization! Artists, designers, and testers can now correlate game state with performance. When too many enemies, lights, AI pathing nodes, sound sources, particles, and so on are causing a dip in performance, Telemetry's visualization makes it glaringly obvious to everyone! Now everyone can work on performance independently -- no more dragging a coder to an artist's desk just to point out that the particle spawner is emitting too many particles!

Of course, none of this is possible if only a few members of the team have access to Telemetry's power -- and that's why Telemetry is not licensed by the seat! We don't want our customers having to decide who gets to use Telemetry -- license it for your game and your whole team can use it!

Always On

The best tools are the ones that you actually use, and for this reason Telemetry is designed to be "always on". Shifting gears between "developing" and "optimizing" is disruptive, especially when you have to change build settings and run your game differently.

Telemetry is designed to be available at all times, not just when you're profiling.

Telemetry consumes very little overhead during normal operation, and even less when it's inactive (for example, when it's uninitialized, can't connect to a server, or is missing its DLL). Telemetry gets out of the way when not in use, but is easy to turn on when you need it. No recompilation necessary!

Cross-Platform

In line with the theme of "maximum availability", Telemetry is a cross-platform performance visualization system. The best tools are those that are available when you need them, and Telemetry supports multiple platforms already (360, Windows, PS3, Wii-U, OS X, iOS and GNU/Linux (x86,x64 and ARM)), with more on the way! Use one performance visualization system on multiple platforms!

Ultrafast Integration

All of this power is available in minutes -- integration often takes less than 15 minutes and requires about a dozen lines of code to get started!

Try Telemetry Now!

Of course, the fastest way to learn about Telemetry is just to email us and set up an evaluation!