New Profiler

James Fulop
3 years, 11 months ago

I have two weeks of backlogged videos so I'm going to be posting them now. In this episode I went over a new profiler I wrote to replace what I was previously using, iprof. I did this because I wanted a profiler that could cross the DLL boundary easily (covering platform, game, and rendering code), and could save a single frame easily so I could profile start times. It was easier to write a new simple profiler than to try to get a full understanding of iprof.

There were a few interesting takeaways off the bat when I got this working.

A. Zeroing 250mb of memory one byte at a time is pretty slow (duh). This took about 2 seconds off my start time
B. It takes Windows a full second to choose a pixel format, no way around this except serializing the result it seems.
C. Doing any downstream calls costs from OpenGL, anything glGet*, costs about 11-12 milliseconds on the first call, because of thread syncing?

Thats the TLDR. Full video here
Jeroen van Rijn
3 years, 11 months ago
Looking like quite a nice and useful profile you've built in now.

Btw, having watched the dev log I noticed that it was very noisy. A lot of static and fan noise in the background which made it less pleasant to watch than it could've been.

I hope you can address this in future videos, 'cause I'd happily tune back in for the next dev log to see where you've taking this project.

James Fulop
3 years, 11 months ago
Thanks for watching Jereon, I'll try to address that.
Log in to comment