CodeTools[Profiling] - Maple Help

Home : Support : Online Help : Programming : Profiling : CodeTools[Profiling] : CodeTools/Profiling/UnProfile

CodeTools[Profiling]

 UnProfile
 stop collecting profiling information

 Calling Sequence UnProfile(proc1, proc2, ...)

Parameters

 proc1, proc2, ... - (optional) procedure to stop profiling

Description

 • The UnProfile() command stops collecting profiling data for all named procedures.
 • The UnProfile(proc1, proc2, ...) command stops collecting profiling data for the specified procedures.
 • The UnProfile function does not effect a procedure that is not currently being profiled.
 • Turning off profiling deletes the internal rtable that stores the profiling data for a procedure.  This rtable can be obtained by using the GetProfileTable function before calling UnProfile.  The Profile function accepts an rtable along with the procedure to reset the internal rtable.

Examples

 > a := proc(x)     if (x > 1) then         return 1;     else         return 0;     end if; end proc:
 > $\mathrm{with}\left(\mathrm{CodeTools}[\mathrm{Profiling}]\right):$
 > $\mathrm{Profile}\left(a\right)$
 > $a\left(2\right)$
 ${1}$ (1)
 > $a\left(0\right)$
 ${0}$ (2)
 > $\mathrm{PrintProfiles}\left(a\right)$
 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≔\mathrm{GetProfileTable}\left(a\right):$
 > $\mathrm{UnProfile}\left(a\right)$
 > $\mathrm{PrintProfiles}\left(a\right)$
 > $\mathrm{Profile}\left(\left[a,t\right]\right)$
 > $\mathrm{PrintProfiles}\left(a\right)$
 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
 > $a\left(3\right)$
 ${1}$ (3)
 > $\mathrm{PrintProfiles}\left(a\right)$
 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