Difference between ‘self’ and ‘total’ in Chrome CPU Profile of JS

Difference between ‘self’ and ‘total’ in Chrome CPU Profile of JS

What is the difference between the ‘self’ and ‘total’ columns in the Chrome CPU profiling of JS code?

Solutions/Answers:

Solution 1:

self is how much time was spent doing work directly in that function.

total is how much time was spent in that function, and in the functions it called.

Solution 2:

Self Time: For a function, is the amount of time to execute code within the function (inline statements).
Checking the performance of individual functions is known as bottom-up analysis.

Total Time: For a function, is the self time of that function and the self times of all functions that function calls.
Checking the performance of functions along with their callees is top-down analysis.

NB: Just because a function has a high self time, doesn’t mean that the function itself is inefficient. It is also important to look at how many times that function is being called.

Related:  How do I add a simple onClick event handler to a canvas element?

Article by Intel