top of page

CPU & GPU Profiler

 

The profiler is divided into two parts : the CPU side and the GPU side.

I'm not profiling anything else for now but it's great to have some information on physics, audio, network and so on as well, like in Unity's profiler.

Screenshot of the CPU profiler in the RamJam Engine

The CPU profiler is a simple stopwatch counting the delay in between each function calls. It keep record of the previous function call and gives you an approximation. It's simple and handy.

Finally I sort all the profiler data to see what function is the bottleneck.

The GPU profiler is a little more complex than just a stopwatch because you can't just do the same thing with asynchronous calls (i.e. rendering calls). Fortunately, DirectX API provides a way to profile with queries. You can also ask to the API to profile deeper and to give you more complete informations about your calls. For instance, you can get the amount of pixel shader calls or the number of rendered primitives.

GPU queries with the DirectX API

bottom of page