The construction and destruction of ScopedTimer proved to be a noticeable cost when we added stats tracking to agg in
SERVER-42584. Somewhere around a 3% overhead. This may also be able to be recovered within the PlanStage layer if we make the timing information of the execution stats be opt-in, and only pay for the cost when running an explain.
For the PlanStage layer, we record statistics to the profiler and include timing information. It appears that we will do this for the find command (and maybe others?) but not for the aggregate command.