load profiling data from a file - Maple Help

Online Help

All Products    Maple    MapleSim


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

CodeTools[Profiling][LoadProfiles] - load profiling data from a file

Calling Sequence

LoadProfiles(filename, proc1, proc2, ..., opts)

Parameters

filename

-

string; file from which to load the profiles

proc1, proc2, ...

-

(optional) procedure

opts

-

equation(s) of the form output=value where value is one of merge or table; specify the type of output

Description

• 

The LoadProfiles(filename) command loads the profiling data stored in filename for all the procedures in the file.

• 

The LoadProfiles(filename, proc1, proc2, ...) command loads the profiling data stored in filename for the specified procedures, proc1, proc2.

• 

By default the profile data is merged into each procedure's profile table.  In this case LoadProfiles does not return anything.  However, you can specify the output = table option which instructs the LoadProfiles function to return a table of the profiling data, similar to the one returned by Build.

• 

LoadProfiles performs two checks while loading profile data from file.  If one of these checks fail, the profiling data for that procedure is not loaded and a warning is printed. The first check determines if the name associated with the data being loaded is the name of a procedure.  The second check verifies that the number of rows of data in the file matches the number of statements in the procedure definition.

• 

If a procedure appears more than once in the file (as might happen if SaveProfiles is called with 'append'), then the multiple rtables of profiling data are merged.

Examples

a := proc(x)
    if (x > 1) then
        return 1;
    else
        return 0;
    end if;
end proc:

withCodeTools[Profiling]:

t:=Buildprocs=a,commands='a0','a1':

SaveProfilesfile,a,t:

LoadProfilesfile,a,'output'='table'

table_Inert_ASSIGNEDNAMEa,PROC=206206000200

(1)

PrintProfilesa,t

a
a := proc(x)
     |Calls Seconds  Words|
PROC |    2   0.000      6|
   1 |    2   0.000      6| if 1 < x then
   2 |    0   0.000      0|   return 1
                            else
   3 |    2   0.000      0|   return 0
                            end if
end proc

SaveProfilesfile&comma;a&comma;t&comma;&apos;append&apos;&colon;

LoadProfilesfile&comma;a

PrintProfilesa

a
a := proc(x)
     |Calls Seconds  Words|
PROC |    4   0.000     12|
   1 |    4   0.000     12| if 1 < x then
   2 |    0   0.000      0|   return 1
                            else
   3 |    4   0.000      0|   return 0
                            end if
end proc

FileTools&lsqb;Remove&rsqb;file

See Also

CodeTools[Profiling], CodeTools[Profiling][Build], CodeTools[Profiling][PrintProfiles], CodeTools[Profiling][Profile], CodeTools[Profiling][SaveProfiles], CodeTools[Profiling][UnProfile], FileTools[Remove], rtable


Download Help Document

Was this information helpful?



Please add your Comment (Optional)
E-mail Address (Optional)
What is ? This question helps us to combat spam