You can write microtime at the beginning of execution, hold this variable to the end, check the time, subtract them, and there you have the runtime. Output buffering will be necessary to do this work in most cases, unless the situation in which a particular thing always works last (for example, footer()).
$time_start = microtime_float();
function microtime_float() {
list($usec, $sec) = explode(" ", microtime());
return ((float)$usec + (float)$sec);
}
$time_end = microtime_float();
$time = round($time_end - $time_start, 4);
echo "Last uncached content render took $time seconds";