Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
5.5.1 - Français

Change language to:
English - 日本語 - Português - Русский

Please note that the recommended version of Scilab is 2024.0.0. This page might be outdated.
However, this page did not exist in the previous stable version.

Aide de Scilab >> Fonctions avancées > profiling > plotprofile

plotprofile

Displays the profiling charts of a function

Calling Sequence

plotprofile(fun)

Arguments

fun

a Scilab compiled function, or a function name (string), or an array of function names

Description

To use plotprofile on a function, the profiling of this function must have been first activated:

  • either by using the add_profiling command.

  • or if the function has beed defined with the deff command, by setting the optional argument of deff to "p".

Once the function has been executed, calling plotprofile displays two windows, one containing the source code of the function, and a second one containing three histograms which show:

  • the number of calls of each line

  • the total CPU time spent on each line (in seconds)

  • a measure of effort to interpret each line (arbitrary unit)

When clicking on a histogram bin, the related line is highlighted in the source code window.

Note: "Exit" item is used to exit from the "plotprofile" graphics window.

Examples

// Exemple of profiling a function
function foo()
  runs = 50;
  b = 0;
  for i = 1:runs
      b = zeros(220, 220);
      for j = 1:220
           for k = 1:220
               b(k,j) = abs(j - k) + 1;
           end
      end
  end
endfunction

// Enables the profiling of the function
add_profiling("foo");

// Executes the function
foo();

// Displays the profiling charts
plotprofile(foo) // click on Exit to exit
// Exemple of profiling a function defined with deff
deff('x = foo2(n)', ['if n > 0 then'
                    '  x = 0;'
                    '  for k = 1:n'
                    '    s = svd(rand(n, n));'
                    '    x = x + s(1);'
                    '  end'
                    'else'
                    '  x = [];'
                    'end'], ..
                 'p');

// Executes the function
foo2(200);

// Displays the profiling charts
plotprofile("foo2") // click on Exit to exit

See Also

  • add_profiling — Active le profiling d'une fonction
  • profile — Renvoie les résultats du profiling d'une fonction
  • showprofile — Outputs the function profiling results to the console
  • reset_profiling — remet à zéro les compteurs de profil du code d'une fonction
Report an issue
<< reset_profiling profiling showprofile >>

Copyright (c) 2022-2023 (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:
Thu Oct 02 13:54:44 CEST 2014