Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
5.3.0 - Português

Change language to:
English - Français - 日本語 -

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

Manual Scilab >> Funções > profiling > profile

profile

extrai profiles (dossiês) de execução de uma função do Scilab

Seqüência de Chamamento

c=profile(fun)

Parâmetro

fun

função Scilab

c

uma matriz nx3 contendo os profiles de execução

Descrição

Para utilizar profile a função Scilab deve ter sido preparada para profiling (análise de desempenho) (ver exec).

Pata tal função, quando tal função é executada, o sistema conta quantas vezes cada linha foi executada e quanto tempo de cpu foi gasto para cada execução da linha. Estes dados são armazenados na estrutura de dados da função. A função profile permite extrair esses dados e retorná-los nas duas primeiras colunas de c. A terceira coluna de c fornece a medida do esforço do interpretador para a execução da linha correspondente. A i-ésima linha de c corresponde à i-ésima linha da função (inclusa primeiro)

Note que, devido à precisão do clock do processador (tipicamente, um microssegundo), algumas linhas executadas aparecem com tempo de execução 0, mesmo que o tempo de execução de cpu total realmente gasto seja grande.

Exemplos

//definindo a função e preparando-a para 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')
//chamando a função
foo(10)
//obtendo profiles de execução
profile(foo)
//chamando a função
foo(20)
profile(foo) //a execução de profiles é acumulada
<< 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 Jan 26 16:24:43 CET 2011