mirror of
https://github.com/Stichting-MINIX-Research-Foundation/netbsd.git
synced 2025-09-12 16:46:33 -04:00
59 lines
2.9 KiB
Plaintext
59 lines
2.9 KiB
Plaintext
The following are examples of php_cputime.d.
|
|
|
|
This script traces the on-CPU time of PHP functions and prints a report.
|
|
Here it traces the example program, Code/Php/func_abc.php.
|
|
|
|
# php_cputime.d
|
|
Tracing... Hit Ctrl-C to end.
|
|
^C
|
|
|
|
Count,
|
|
FILE TYPE NAME COUNT
|
|
func_abc.php func func_a 1
|
|
func_abc.php func func_b 1
|
|
func_abc.php func func_c 1
|
|
func_abc.php func sleep 3
|
|
- total - 6
|
|
|
|
Exclusive function on-CPU times (us),
|
|
FILE TYPE NAME TOTAL
|
|
func_abc.php func func_c 17
|
|
func_abc.php func func_b 25
|
|
func_abc.php func func_a 74
|
|
func_abc.php func sleep 93
|
|
- total - 210
|
|
|
|
Inclusive function on-CPU times (us),
|
|
FILE TYPE NAME TOTAL
|
|
func_abc.php func func_c 39
|
|
func_abc.php func func_b 87
|
|
func_abc.php func sleep 93
|
|
func_abc.php func func_a 210
|
|
|
|
In total, six functions were called; sleep was called three times and there
|
|
was one call each of func_a(), func_b() and func_c().
|
|
|
|
The exclusive subroutine on-CPU times show that func_a() spent around 74
|
|
microseconds on-CPU, func_b() spent 25 microseconds on-CPU, and func_c() spent
|
|
17 microseconds on-CPU. This exclusive times excludes time spent in other
|
|
subroutines.
|
|
|
|
The inclusive subroutine on-CPU times show that func_c() spent around 39
|
|
microseconds on-CPU, func_b() spent around 87 microseconds on-CPU and
|
|
func_a() spent around 210 microseconds. This inclusive time includes the time
|
|
spent in other functions called (including sleep), and since func_a() called
|
|
func_b() which called func_c(), these times make perfect sense.
|
|
|
|
These on-CPU times are the time the program spent running on a CPU, from when
|
|
the function began to when it completed. This does not include time
|
|
spent off-CPU time such as sleeping for I/O or waiting for scheduling.
|
|
|
|
On-CPU times are useful for showing who is causing the CPUs to be busy.
|
|
See Notes/ALLoncpu_notes.txt for more details. Also see
|
|
Notes/ALLexclusive_notes.txt and Notes/ALLinclusive_notes.txt for a
|
|
detailed explanation of exclusive vs inclusive subroutine time.
|
|
|
|
If you study the func_abc.php program alongside the above output, the numbers
|
|
should make sense.
|
|
|