Let me try. First off, you need to enable script profiling.
Code:
/console scriptProfile 1
Do a /reload afterwards for good measure. Script profiling is memory intensive, so make sure you turn it back off after you're done by doing
Code:
/console scriptProfile 0
As for the macro itself:
Code:
/run local t,a=table,{}UpdateAddOnCPUUsage()for i=1,GetNumAddOns()do t.insert(a,{GetAddOnCPUUsage(i),(GetAddOnInfo(i))})end t.sort(a,function(x,y)return x[1]>y[1]end)for i=1,10 do if a[i]then print(("#%02d: %s (%d ms)"):format(i,a[i][2],a[i][1]))end end
Drycoded. Try it out.