CodeTools[Profiling]
Profile
enable collection profiling information
Calling Sequence
Parameters
Description
Examples
Profile(proc1, proc2, ...)
Profile([proc1, tab1], [proc2, tab1], ...)
proc1, proc2, ...
-
(optional) procedures to be profiled
tab1, tab2, ...
(optional) rtable of profiling data
The Profile() command collects profiling data for all currently named procedures and all procedures read from a repository for Maple procedures.
The Profile(proc1, proc2, ...) command collects profiling data for all specified procedures.
The Profile([proc1, tab1], [proc2, tab2], ...) command has a length two list, whose first element is a procedure and second element is an rtable. Profiling is enabled for each procedure with the profiling data specified in the rtable as its initial value. The rtable should be obtained by a call to GetProfileTable on the procedure.
The procedures that are already profiled are not modified by a call to Profile.
To stop profiling, use the UnProfile function.
a := proc(x) if (x > 1) then return 1; else return 0; end if; end proc:
with⁡CodeToolsProfiling:
Profile⁡a
a⁡2
1
a⁡0
0
PrintProfiles⁡a
a a := proc(x) |Calls Seconds Words| PROC | 2 0.000 6| 1 | 2 0.000 6| if 1 < x then 2 | 1 0.000 0| return 1 else 3 | 1 0.000 0| return 0 end if end proc
t≔GetProfileTable⁡a:
UnProfile⁡a
Error, (in CodeTools:-Profiling:-PrintProfiles) a is not currently profiled
Profile⁡a,t
a⁡3
a a := proc(x) |Calls Seconds Words| PROC | 3 0.000 9| 1 | 3 0.000 9| if 1 < x then 2 | 2 0.000 0| return 1 else 3 | 1 0.000 0| return 0 end if end proc
See Also
CodeTools[Profiling][Build]
CodeTools[Profiling][GetProfileTable]
CodeTools[Profiling][PrintProfiles]
CodeTools[Profiling][UnProfile]
profile
Download Help Document