Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
5.3.3 - English

Change language to:
Français - 日本語 - Português

Please note that the recommended version of Scilab is 2025.0.0. This page might be outdated.
See the recommended documentation of this function

Scilab help >> Functions > profiling > profile

profile

extract execution profiles of a Scilab function

Calling Sequence

c=profile(fun)

Arguments

fun

a Scilab function

c

a nx3 matrix containig the execution profiles

Description

To use profile the Scilab function must have been prepared for profiling (see exec).

For such function, When such a function is executed the systems counts how many time each line is executed and how may cpu time is spend for each line execution. These data are stored within the function data structure. The profile function allows to extract these data and return them in the two first columns of c. The c third column gives a measure of interpetor effort for one execution of corresponding line. Ith line of c corresponds to Ith line of the function (included first)

Note that, due to the precision of the processor clock (typically one micro second), some executed lignes may appear with 0 cpu time even if total cpu time really spend in their execution is large.

Examples

//define function and prepare it for profiling
deff('x=foo(n)',['if n==0 then'
                 '  x=[]'
                 'else'
                 '  x=0'
                 '  for k=1:n'
                 '    s=svd(rand(n+10,n+10))'
                 '    x=x+s(1)'
                 '  end'
                 'end'],'p')

//call the function
foo(10)

//get execution profiles
profile(foo)

//call the function
foo(20)
profile(foo) //execution profiles are cumulated

See Also

  • exec — script file execution
  • deff — on-line definition of function
  • plotprofile — extracts and displays execution profiles of a Scilab function
  • showprofile — extracts and displays execution profiles of a Scilab function
<< plotprofile profiling remove_profiling >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Wed Oct 05 12:10:04 CEST 2011