profile(:Goal)
profile(:Goal,
+Options)Run once(Goal)
under the execution profiler. If the (xpce)
GUI is enabled this predicate is hooked by library(swi/pce_profile)
and results are presented in a gui that enables navigating the call tree
and jump to predicate implementations. Without the GUI, a simple textual
report is generated. Defined options are:
- time(Which)
- Profile
cpu
or wall
time. The default is CPU
time.
- sample_rate(Rate)
- Samples per second, any numeric value between 1 and 1000
- ports(Bool)
- Specifies ports counted -
true
(all ports), false
(call port only) or classic
(all with some errors).
Accomodates space/accuracy tradeoff building call tree.
- top(N)
- When generating a textual report, show the top N predicates.
- cumulative(Bool)
- If
true
(default false
), show cumulative
output in a textual report.
- See also
- show_coverage/2 from
library(test_cover)
.
- To be done
- The textual input reflects only part of the information.