A sampling profiler is the one for production

An instrumenting profiler records every call, which changes the timings it is measuring — small fast functions look disproportionately expensive because the overhead is per call.

# instrumenting: exact counts, distorted timings, huge overhead
#   locally, for "how many times is this called"

# sampling: statistical, a fraction of a percent, safe on a live host
#   in production, for "where is the time actually going"

$ php -d extension=tideways_xhprof.so ...

Sampling belongs on a production host because the overhead is negligible and the results reflect real traffic rather than a synthetic request. Mixing the two up is how a team spends a week optimising a function that appeared expensive because it was called two million times cheaply. Both beat the third option, which is adding microtime() calls and reasoning about the numbers.