1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92
|
<?xml version="1.0" encoding="UTF-8"?>
<!--
* Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
* Copyright (C) ????-2008 - INRIA
*
* This file must be used under the terms of the CeCILL.
* This source file is licensed as described in the file COPYING, which
* you should have received as part of this distribution. The terms
* are also available at
* http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
*
-->
<refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:db="http://docbook.org/ns/docbook" version="5.0-subset Scilab" xml:lang="en" xml:id="plotprofile">
<info>
<pubdate>$LastChangedDate$</pubdate>
</info>
<refnamediv>
<refname>plotprofile</refname>
<refpurpose> extracts and displays execution profiles
of a Scilab function</refpurpose>
</refnamediv>
<refsynopsisdiv>
<title>Calling Sequence</title>
<synopsis>plotprofile(fun)</synopsis>
</refsynopsisdiv>
<refsection>
<title>Parameters</title>
<variablelist>
<varlistentry>
<term>fun</term>
<listitem>
<para>a Scilab compiled function, or a function name (string), or an array of
function names</para>
</listitem>
</varlistentry>
</variablelist>
</refsection>
<refsection>
<title>Description</title>
<para>
To use <literal>plotprofile</literal>, the Scilab function must have been prepared for
profiling (see exec).</para>
<para>
When such a function is executed, the system
counts how many times each line is executed and how much cpu time is
spent executing each line. This data is stored within the
function data structure. The function <literal>plotprofile</literal> in an interactive
command which displays this results in a graphic window. When a line
is clicked, the source of the function is displayed with the selected line
highlighted.</para>
<para>
NOTE: you have to click on the "Exit" item in the graphics windows to
exit from "plotprofile".</para>
<para>
The function code is regenerated with <literal>fun2string</literal> and dumped into
a temporary file.</para>
</refsection>
<refsection>
<title>Examples</title>
<programlisting role="example"><![CDATA[
//define a 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(30)
//get execution profiles
plotprofile(foo) // click on Exit to exit
]]></programlisting>
</refsection>
<refsection>
<title>See Also</title>
<simplelist type="inline">
<member>
<link linkend="profile">profile</link>
</member>
<member>
<link linkend="showprofile">showprofile</link>
</member>
<member>
<link linkend="fun2string">fun2string</link>
</member>
</simplelist>
</refsection>
</refentry>
|