I am not sure if the method you show includes the rendering time.
My understanding may not be complete but at least these events should happen between Shift-Enter and the results being displayed on screen when evaluating
- Converting the result to boxes, as in
- Sending the boxes through MathLink, possibly after compression (kernel and front end)
- Rendering the result (front end)
I believe that
AbsoluteTiming measures only (1).
Your method, i.e.
t = AbsoluteTime
AbsoluteTime - t
should measure (1), (2) and some part of (3), but not (4).
We can measure (1) and (2) using
AbsoluteTiming[ToBoxes[something];], but this won't include (3) at all.
I thought that we might be able to approximate the whole thing, (1)-(4), using
AbsoluteTiming[Rasterize[something];], but this will also include sending the rasterized result back through MathLink. In practice this seem to significantly overestimate the real timing (based on comparing with a stopwatch).
Much of this answer is based on educated guesses, and may contain inaccuracies.
Note that in situations similar to what you show, step (3) will often take considerably longer than (1)-(2), and step (4) may take even longer than (1)-(3) (depending on the situation).