>
>
> > I am trying to understand the output of the v8 profiler. Below is the
> > profiler output for my app.
> >
> > I have the following doubts.
> >
> > 1. What are unaccounted ticks?
>
> The profiler is sampling based. That is, it wakes up at regular
> intervals (ticks) and records where the instruction pointer is. If the
> IP points to an address that cannot be resolved to a function, the
> tick is reported as unaccounted.
>

Why does the IP need to point to a function? Can't it just point to any
instruction(line) in the function?
I think m missing something very basic here.. It d help if you could tell
me when would this happen?


>
> > 2. What does nonlib col mean?
> >     I think it means, that x% of the non-lib time was spent here. -- pls
> > correct me if I m wrong.
>
> That is correct, to the best of my understanding.
>
> > 3. When I tried adding the ticks from shared libraries + javascript it
> was
> > <(slightly) total ticks. Why is that?
>
> There is a cut-off point. Functions that barely register aren't printed.
>
> > 4. Which line in shared libraries(I am assuming it is counted there)
> account
> > for GC ticks?
>
> None. GC is accounted for separately under the (aptly named I daresay)
> section "GC": 36,598 ticks or 14.1% of total run time in your case.
>

I doesn't look like it from the output.

total ticks             :   290423
unaccounted ticks :     31441
accounted ticks    :    258982
shared lib ticks     :    194435
javascript ticks     :      64325
GC ticks              :      36598

shared lib + js ticks (258760 ) ~= accounted ticks(258982) (diff of 222
ticks)



>
> > 5. What does the output in JS section mean?
> >     to be specific -
> >        -- meaning where in the call stack is the function corresponding
> to
> > the line.
> >        -- can the number of ticks in line be included in another.
>
> I don't understand what you mean by that.
>


I mean when the profiler wakes up, it would look at a call trace right? Are
the lines logged in the JS section at the top of the stack?
This can be misleading since the call stack might have changed due to
setTimeouts. I want to understand how can I interpret these lines and what
are its caveats.


>
> --
> Job Board: http://jobs.nodejs.org/
> Posting guidelines:
> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
> You received this message because you are subscribed to the Google
> Groups "nodejs" group.
> To post to this group, send email to [email protected]
> To unsubscribe from this group, send email to
> [email protected]
> For more options, visit this group at
> http://groups.google.com/group/nodejs?hl=en?hl=en
>

-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en

Reply via email to