Lack of information on the MicroProfiler

https://developer.roblox.com/articles/MicroProfiler

The MicroProfiler is a very powerful tool for developers to debug and assess performance issues in their game. That being said, it’s unfortunate that such a tool lacks technical information (or anything at all).

A recent thread regarding profiles (specially a server profile capture) led me to go on a search for information on the MicroProfiler, something which I have done before but put off due to not being able to find much on it, nor did I use it as often. Now that I actually do use this tool and there are others looking to use it, the lack of information is a little hard hitting.

I’ve spent a while reading the single article on the MicroProfiler, as well as watching the three videos on it. They introduce the MicroProfiler but there isn’t any actual information to go off of aside from “if a bar is too big, you have performance issues!”. The DevForum wasn’t of much help either, since searching “MicroProfiler” just has tons of threads asking what labels mean or how to use it in the first place.

The only use I really have found for the MicroProfiler where I actually know how to use it is the debug library where you can open up your own sections within the MicroProfiler to analyse the performance for a chunk of code that you specify. Everything else, presumably, is internal and unknown to me.

It would be very helpful if some more information was added regarding the MicroProfiler. One major piece of knowledge that’d be great to possess is what some of (or all of) the bars not developer-created via the debug library mean or how they impact performance in a game. It’d also be helpful to know what is important to target in a codebase to reduce the performance hits those sections have (i.e. Physics).

That being said, I don’t know what any of the options in the tool strip bar do either, so I click things and hope that I’m not doing anything wrong. This goes for both the in-game MicroProfiler and a server profile capture (though the server capture is a little easier to understand based on inferences and assumptions, while I’m not sure what the many options for the in-game profiler are at all).

45 Likes

yes hi
sorry for bump
i too think MicroProfiler is big useful


What does runJob mean?
What does ClearUnusedLuaRefsJob mean?

the world may never know

EDIT: the second one might be self explanatory but I’d still appreciate some documentation

1 Like

There’s been some movement going on with a proper MicroProfiler article - it’s Coming Soon :tm:

I’ll update this thread when it’s up on the developer hub. It may or may not include a description of all the labels (still some internal discussion on that).

10 Likes

Greetings from the future! The MicroProfiler page has been updated, and the update is now visible.

We’re looking to follow up with information on the labels in the timeline view, but this is for a separate article. General game optimization is a topic that is beyond the scope of this one tool, so we want to make sure we do it right.

3 Likes

Sorry for the bump, but wondering if there is any update on timeline labels? It’s a super cool tool, but not very useful without any documentation on how to use it. I’ve been getting this “Scene” / “Opque_ID” label a lot, but there’s never been any clarification on what it means: Random lag as of a week ago or so with 'Scene' 'Id_Opque'

1 Like