• IS THIS SITE UGLY? Click "RG3" at the very bottom-left of this page to change it. To dismiss this notice, click the X --->
Resource icon

MQ2Profiler 2018-12-10

Download now: Join us with Level 2 access
or earn your way in with RedCents.
Adds a new command, /profile. This runs a macro just like /macro does, but when the macro ends it will output a csv file of every subroutine that has been called, and how long it took. The file will be in Macros/profiles, named for the macro and the time it started.

The output file contains one line per subroutine call, in the order they were called in. The columns are:

Command Count - how many commands (lines) have been run from the start of the macro to now
Seconds Since Start - how long the macro's been running
Stack Depth - how many subroutines deep we are (Main is one, anything called from Main is 2, next call is 3, etc)
Subroutine - Name of the sub
Subroutine (tabbed) - Name of the sub, but with a few spaces for each increase in depth so it looks kinda tree like
Commands (inc Children) - How many commands were executed by this sub and any subs it called
Commands (ex Children) - How many commands were executed by just this subroutine, not including those executed by called subs
ms inc - How long did this sub and its children take to run
ms ex - How long did just this sub take to run, excluding time taken by its called subs
Called Children - How many other subs were called by this sub (does not include subs called by children)
Return Value - Value from /return if any
Arguments - Arguments supplied to the sub, one per column

Goes nicely with a pivot table in excel, e.g. with this setup:

1544096232463.png


Gives this sort of output, e.g. from kiss11:

1544096821104.png


Can quickly see that a lot of time gets spent in the CheckHealth & RezCheck subs.
Server Type
Live
Author
alynel
Downloads
3
First release
Last update
Rating
0.00 star(s) 0 ratings

More resources from alynel

Top