next up previous contents
Next: 5.14.2 Profiling Techniques Up: 5.14 Profiling Previous: 5.14 Profiling

5.14.1 Profile Interface

[Variable]
profile:* timed-functions*

This variable holds a list of all functions that are currently being profiled.

[Macro]
profile: profile tex2html_wrap_inline17166name | :callers ttex2html_wrap_inline17172

This macro wraps profiling code around the named functions. As in trace, the names are not evaluated. If a function is already profiled, then the function is unprofiled and reprofiled (useful to notice function redefinition.) A warning is printed for each name that is not a defined function.

If :callers t is specified, then each function that calls this function is recorded along with the number of calls made.

[Macro]
profile: unprofile tex2html_wrap_inline17166nametex2html_wrap_inline17172

This macro removes profiling code from the named functions. If no names are supplied, all currently profiled functions are unprofiled.


change_begin
[Macro]
profile: profile-all &key :package :callers-p

This macro in effect calls profile:profile for each function in the specified package which defaults to *package*. :callers-p has the same meaning as in profile:profile.


change_end

[Macro]
profile: report-time tex2html_wrap_inline17166nametex2html_wrap_inline17172

This macro prints a report for each named function of the following information:

Summary totals of the CPU time, consing and calls columns are printed. An estimate of the profiling overhead is also printed (see below). If no names are supplied, then the times for all currently profiled functions are printed.

[Macro]
reset-time tex2html_wrap_inline17166nametex2html_wrap_inline17172

This macro resets the profiling counters associated with the named functions. If no names are supplied, then all currently profiled functions are reset.



Raymond Toy
Mon Jul 14 09:11:27 EDT 1997