forked from menault/2026_TD1_DEV51_Qualite_Algo
tp 1
This commit is contained in:
+32
@@ -0,0 +1,32 @@
|
||||
Kais, Jeremy
|
||||
|
||||
Empreinte du rapport : 1d53de903efd2b7c
|
||||
real 0m2.805s
|
||||
user 0m2.777s
|
||||
sys 0m0.007s
|
||||
|
||||
|
||||
analyse :
|
||||
Profile avant : On peut voir que egales, longueur sont les méthodes qui contiennent la majorité des appeles. Ce sont aussi ceux qui prennent le plus de secondes.
|
||||
|
||||
Graphe d'appels : Aussi longeur et egales prennent près de 30% du temps d'exécutions.
|
||||
|
||||
Pourquoi: Ces 2 méthodes contiennent des boucles qui analysent les données une par une
|
||||
|
||||
Proposition:
|
||||
|
||||
Sortir longueur_moyenne de la boucle pour en faire une variable constante.
|
||||
|
||||
double ecart_type_longueur(const Entree *table, int n)
|
||||
{
|
||||
double somme = 0.0;
|
||||
double moyenne = longueur_moyenne(table, n);
|
||||
for (int i = 0; i < n; i++) {
|
||||
double ecart = longueur(table[i].mot) - moyenne;
|
||||
somme += ecart * ecart;
|
||||
}
|
||||
return somme / n; /* variance ; la racine est prise dans main */
|
||||
}
|
||||
|
||||
|
||||
table de hashage ou tri dicotomique
|
||||
+8
-1
@@ -73,6 +73,8 @@ int egales(const char *a, const char *b)
|
||||
return a[i] == b[i];
|
||||
}
|
||||
|
||||
|
||||
|
||||
int comparer(const char *a, const char *b)
|
||||
{
|
||||
int i = 0;
|
||||
@@ -280,6 +282,10 @@ void compter_mots_ligne(Entree *table, int *nb_entrees, const char *ligne,
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/* ------------------------------------------------------------------------ */
|
||||
/* Tri : par nombre d'occurrences décroissant, puis ordre alphabétique */
|
||||
/* ------------------------------------------------------------------------ */
|
||||
@@ -319,8 +325,9 @@ double longueur_moyenne(const Entree *table, int n)
|
||||
double ecart_type_longueur(const Entree *table, int n)
|
||||
{
|
||||
double somme = 0.0;
|
||||
double moyenne = longueur_moyenne(table, n);
|
||||
for (int i = 0; i < n; i++) {
|
||||
double ecart = longueur(table[i].mot) - longueur_moyenne(table, n);
|
||||
double ecart = longueur(table[i].mot) - moyenne;
|
||||
somme += ecart * ecart;
|
||||
}
|
||||
return somme / n; /* variance ; la racine est prise dans main */
|
||||
|
||||
@@ -0,0 +1,290 @@
|
||||
Flat profile:
|
||||
|
||||
Each sample counts as 0.01 seconds.
|
||||
% cumulative self self total
|
||||
time seconds seconds calls ms/call ms/call name
|
||||
39.67 0.73 0.73 308701874 0.00 0.00 egales
|
||||
24.46 1.18 0.45 1605729 0.00 0.00 longueur
|
||||
16.30 1.48 0.30 150182 0.00 0.01 chercher_mot
|
||||
7.07 1.61 0.13 _init
|
||||
5.43 1.71 0.10 12172087 0.00 0.00 comparer
|
||||
2.17 1.75 0.04 1 40.00 175.00 trier_entrees
|
||||
1.90 1.78 0.04 17202045 0.00 0.00 doit_echanger
|
||||
1.09 1.80 0.02 250000 0.00 0.00 est_mot_vide
|
||||
0.54 1.81 0.01 5297256 0.00 0.00 est_lettre
|
||||
0.54 1.82 0.01 1 10.00 10.00 decouper_lignes
|
||||
0.54 1.83 0.01 1 10.00 10.00 generer_texte
|
||||
0.27 1.84 0.01 21746 0.00 0.05 compter_mots_ligne
|
||||
0.00 1.84 0.00 1266663 0.00 0.00 en_minuscule
|
||||
0.00 1.84 0.00 928117 0.00 0.00 alea
|
||||
0.00 1.84 0.00 150182 0.00 0.01 compter_mot
|
||||
0.00 1.84 0.00 32667 0.00 0.00 copier
|
||||
0.00 1.84 0.00 26801 0.00 0.00 ajouter
|
||||
0.00 1.84 0.00 21746 0.00 0.02 normaliser_ligne
|
||||
0.00 1.84 0.00 2 0.00 1.64 longueur_moyenne
|
||||
0.00 1.84 0.00 1 0.00 7.09 analyser_bigrammes
|
||||
0.00 1.84 0.00 1 0.00 1.64 construire_rapport
|
||||
0.00 1.84 0.00 1 0.00 3.29 ecart_type_longueur
|
||||
0.00 1.84 0.00 1 0.00 0.00 empreinte
|
||||
0.00 1.84 0.00 1 0.00 5.87 generer_vocabulaire
|
||||
0.00 1.84 0.00 1 0.00 0.00 racine
|
||||
|
||||
% the percentage of the total running time of the
|
||||
time program used by this function.
|
||||
|
||||
cumulative a running sum of the number of seconds accounted
|
||||
seconds for by this function and those listed above it.
|
||||
|
||||
self the number of seconds accounted for by this
|
||||
seconds function alone. This is the major sort for this
|
||||
listing.
|
||||
|
||||
calls the number of times this function was invoked, if
|
||||
this function is profiled, else blank.
|
||||
|
||||
self the average number of milliseconds spent in this
|
||||
ms/call function per call, if this function is profiled,
|
||||
else blank.
|
||||
|
||||
total the average number of milliseconds spent in this
|
||||
ms/call function and its descendents per call, if this
|
||||
function is profiled, else blank.
|
||||
|
||||
name the name of the function. This is the minor sort
|
||||
for this listing. The index shows the location of
|
||||
the function in the gprof listing. If the index is
|
||||
in parenthesis it shows where it would appear in
|
||||
the gprof listing if it were to be printed.
|
||||
|
||||
Copyright (C) 2012-2026 Free Software Foundation, Inc.
|
||||
|
||||
Copying and distribution of this file, with or without modification,
|
||||
are permitted in any medium without royalty provided the copyright
|
||||
notice and this notice are preserved.
|
||||
|
||||
Call graph (explanation follows)
|
||||
|
||||
|
||||
granularity: each sample hit covers 4 byte(s) for 0.54% of 1.84 seconds
|
||||
|
||||
index % time self children called name
|
||||
<spontaneous>
|
||||
[1] 92.9 0.00 1.71 main [1]
|
||||
0.01 1.05 21746/21746 compter_mots_ligne [2]
|
||||
0.00 0.44 21746/21746 normaliser_ligne [7]
|
||||
0.04 0.14 1/1 trier_entrees [8]
|
||||
0.01 0.00 1/1 generer_texte [15]
|
||||
0.01 0.00 1/1 decouper_lignes [14]
|
||||
0.00 0.01 1/1 analyser_bigrammes [17]
|
||||
0.00 0.01 1/1 generer_vocabulaire [18]
|
||||
0.00 0.00 1/1 ecart_type_longueur [20]
|
||||
0.00 0.00 1/1 construire_rapport [21]
|
||||
0.00 0.00 1/2 longueur_moyenne [19]
|
||||
0.00 0.00 1/1 racine [26]
|
||||
0.00 0.00 1/1 empreinte [25]
|
||||
-----------------------------------------------
|
||||
0.01 1.05 21746/21746 main [1]
|
||||
[2] 57.3 0.01 1.05 21746 compter_mots_ligne [2]
|
||||
0.00 1.00 150182/150182 compter_mot [4]
|
||||
0.02 0.03 250000/250000 est_mot_vide [12]
|
||||
-----------------------------------------------
|
||||
0.30 0.70 150182/150182 compter_mot [4]
|
||||
[3] 54.4 0.30 0.70 150182 chercher_mot [3]
|
||||
0.70 0.00 296656203/308701874 egales [5]
|
||||
-----------------------------------------------
|
||||
0.00 1.00 150182/150182 compter_mots_ligne [2]
|
||||
[4] 54.4 0.00 1.00 150182 compter_mot [4]
|
||||
0.30 0.70 150182/150182 chercher_mot [3]
|
||||
0.00 0.00 5866/32667 copier [24]
|
||||
-----------------------------------------------
|
||||
0.03 0.00 12045671/308701874 est_mot_vide [12]
|
||||
0.70 0.00 296656203/308701874 chercher_mot [3]
|
||||
[5] 39.7 0.73 0.00 308701874 egales [5]
|
||||
-----------------------------------------------
|
||||
0.00 0.00 5866/1605729 ecart_type_longueur [20]
|
||||
0.00 0.00 11732/1605729 longueur_moyenne [19]
|
||||
0.01 0.00 26801/1605729 ajouter [16]
|
||||
0.44 0.00 1561330/1605729 normaliser_ligne [7]
|
||||
[6] 24.5 0.45 0.00 1605729 longueur [6]
|
||||
-----------------------------------------------
|
||||
0.00 0.44 21746/21746 main [1]
|
||||
[7] 23.9 0.00 0.44 21746 normaliser_ligne [7]
|
||||
0.44 0.00 1561330/1605729 longueur [6]
|
||||
0.00 0.00 1539584/5297256 est_lettre [13]
|
||||
0.00 0.00 1266663/1266663 en_minuscule [22]
|
||||
-----------------------------------------------
|
||||
0.04 0.14 1/1 main [1]
|
||||
[8] 9.5 0.04 0.14 1 trier_entrees [8]
|
||||
0.04 0.10 17202045/17202045 doit_echanger [9]
|
||||
-----------------------------------------------
|
||||
0.04 0.10 17202045/17202045 trier_entrees [8]
|
||||
[9] 7.3 0.04 0.10 17202045 doit_echanger [9]
|
||||
0.10 0.00 12172087/12172087 comparer [11]
|
||||
-----------------------------------------------
|
||||
<spontaneous>
|
||||
[10] 7.1 0.13 0.00 _init [10]
|
||||
-----------------------------------------------
|
||||
0.10 0.00 12172087/12172087 doit_echanger [9]
|
||||
[11] 5.4 0.10 0.00 12172087 comparer [11]
|
||||
-----------------------------------------------
|
||||
0.02 0.03 250000/250000 compter_mots_ligne [2]
|
||||
[12] 2.6 0.02 0.03 250000 est_mot_vide [12]
|
||||
0.03 0.00 12045671/308701874 egales [5]
|
||||
-----------------------------------------------
|
||||
0.00 0.00 1539584/5297256 normaliser_ligne [7]
|
||||
0.01 0.00 3757672/5297256 analyser_bigrammes [17]
|
||||
[13] 0.5 0.01 0.00 5297256 est_lettre [13]
|
||||
-----------------------------------------------
|
||||
0.01 0.00 1/1 main [1]
|
||||
[14] 0.5 0.01 0.00 1 decouper_lignes [14]
|
||||
-----------------------------------------------
|
||||
0.01 0.00 1/1 main [1]
|
||||
[15] 0.5 0.01 0.00 1 generer_texte [15]
|
||||
0.00 0.00 900183/928117 alea [23]
|
||||
-----------------------------------------------
|
||||
0.00 0.00 5867/26801 construire_rapport [21]
|
||||
0.00 0.01 20934/26801 generer_vocabulaire [18]
|
||||
[16] 0.4 0.00 0.01 26801 ajouter [16]
|
||||
0.01 0.00 26801/1605729 longueur [6]
|
||||
0.00 0.00 26801/32667 copier [24]
|
||||
-----------------------------------------------
|
||||
0.00 0.01 1/1 main [1]
|
||||
[17] 0.4 0.00 0.01 1 analyser_bigrammes [17]
|
||||
0.01 0.00 3757672/5297256 est_lettre [13]
|
||||
-----------------------------------------------
|
||||
0.00 0.01 1/1 main [1]
|
||||
[18] 0.3 0.00 0.01 1 generer_vocabulaire [18]
|
||||
0.00 0.01 20934/26801 ajouter [16]
|
||||
0.00 0.00 27934/928117 alea [23]
|
||||
-----------------------------------------------
|
||||
0.00 0.00 1/2 ecart_type_longueur [20]
|
||||
0.00 0.00 1/2 main [1]
|
||||
[19] 0.2 0.00 0.00 2 longueur_moyenne [19]
|
||||
0.00 0.00 11732/1605729 longueur [6]
|
||||
-----------------------------------------------
|
||||
0.00 0.00 1/1 main [1]
|
||||
[20] 0.2 0.00 0.00 1 ecart_type_longueur [20]
|
||||
0.00 0.00 5866/1605729 longueur [6]
|
||||
0.00 0.00 1/2 longueur_moyenne [19]
|
||||
-----------------------------------------------
|
||||
0.00 0.00 1/1 main [1]
|
||||
[21] 0.1 0.00 0.00 1 construire_rapport [21]
|
||||
0.00 0.00 5867/26801 ajouter [16]
|
||||
-----------------------------------------------
|
||||
0.00 0.00 1266663/1266663 normaliser_ligne [7]
|
||||
[22] 0.0 0.00 0.00 1266663 en_minuscule [22]
|
||||
-----------------------------------------------
|
||||
0.00 0.00 27934/928117 generer_vocabulaire [18]
|
||||
0.00 0.00 900183/928117 generer_texte [15]
|
||||
[23] 0.0 0.00 0.00 928117 alea [23]
|
||||
-----------------------------------------------
|
||||
0.00 0.00 5866/32667 compter_mot [4]
|
||||
0.00 0.00 26801/32667 ajouter [16]
|
||||
[24] 0.0 0.00 0.00 32667 copier [24]
|
||||
-----------------------------------------------
|
||||
0.00 0.00 1/1 main [1]
|
||||
[25] 0.0 0.00 0.00 1 empreinte [25]
|
||||
-----------------------------------------------
|
||||
0.00 0.00 1/1 main [1]
|
||||
[26] 0.0 0.00 0.00 1 racine [26]
|
||||
-----------------------------------------------
|
||||
|
||||
This table describes the call tree of the program, and was sorted by
|
||||
the total amount of time spent in each function and its children.
|
||||
|
||||
Each entry in this table consists of several lines. The line with the
|
||||
index number at the left hand margin lists the current function.
|
||||
The lines above it list the functions that called this function,
|
||||
and the lines below it list the functions this one called.
|
||||
This line lists:
|
||||
index A unique number given to each element of the table.
|
||||
Index numbers are sorted numerically.
|
||||
The index number is printed next to every function name so
|
||||
it is easier to look up where the function is in the table.
|
||||
|
||||
% time This is the percentage of the `total' time that was spent
|
||||
in this function and its children. Note that due to
|
||||
different viewpoints, functions excluded by options, etc,
|
||||
these numbers will NOT add up to 100%.
|
||||
|
||||
self This is the total amount of time spent in this function.
|
||||
|
||||
children This is the total amount of time propagated into this
|
||||
function by its children.
|
||||
|
||||
called This is the number of times the function was called.
|
||||
If the function called itself recursively, the number
|
||||
only includes non-recursive calls, and is followed by
|
||||
a `+' and the number of recursive calls.
|
||||
|
||||
name The name of the current function. The index number is
|
||||
printed after it. If the function is a member of a
|
||||
cycle, the cycle number is printed between the
|
||||
function's name and the index number.
|
||||
|
||||
|
||||
For the function's parents, the fields have the following meanings:
|
||||
|
||||
self This is the amount of time that was propagated directly
|
||||
from the function into this parent.
|
||||
|
||||
children This is the amount of time that was propagated from
|
||||
the function's children into this parent.
|
||||
|
||||
called This is the number of times this parent called the
|
||||
function `/' the total number of times the function
|
||||
was called. Recursive calls to the function are not
|
||||
included in the number after the `/'.
|
||||
|
||||
name This is the name of the parent. The parent's index
|
||||
number is printed after it. If the parent is a
|
||||
member of a cycle, the cycle number is printed between
|
||||
the name and the index number.
|
||||
|
||||
If the parents of the function cannot be determined, the word
|
||||
`<spontaneous>' is printed in the `name' field, and all the other
|
||||
fields are blank.
|
||||
|
||||
For the function's children, the fields have the following meanings:
|
||||
|
||||
self This is the amount of time that was propagated directly
|
||||
from the child into the function.
|
||||
|
||||
children This is the amount of time that was propagated from the
|
||||
child's children to the function.
|
||||
|
||||
called This is the number of times the function called
|
||||
this child `/' the total number of times the child
|
||||
was called. Recursive calls by the child are not
|
||||
listed in the number after the `/'.
|
||||
|
||||
name This is the name of the child. The child's index
|
||||
number is printed after it. If the child is a
|
||||
member of a cycle, the cycle number is printed
|
||||
between the name and the index number.
|
||||
|
||||
If there are any cycles (circles) in the call graph, there is an
|
||||
entry for the cycle-as-a-whole. This entry shows who called the
|
||||
cycle (as parents) and the members of the cycle (as children.)
|
||||
The `+' recursive calls entry shows the number of function calls that
|
||||
were internal to the cycle, and the calls entry for each member shows,
|
||||
for that member, how many times it was called from other members of
|
||||
the cycle.
|
||||
|
||||
Copyright (C) 2012-2026 Free Software Foundation, Inc.
|
||||
|
||||
Copying and distribution of this file, with or without modification,
|
||||
are permitted in any medium without royalty provided the copyright
|
||||
notice and this notice are preserved.
|
||||
|
||||
Index by function name
|
||||
|
||||
[10] _init [24] copier [15] generer_texte
|
||||
[16] ajouter [14] decouper_lignes [18] generer_vocabulaire
|
||||
[23] alea [9] doit_echanger [6] longueur
|
||||
[17] analyser_bigrammes [20] ecart_type_longueur [19] longueur_moyenne
|
||||
[3] chercher_mot [5] egales [7] normaliser_ligne
|
||||
[11] comparer [25] empreinte [26] racine
|
||||
[4] compter_mot [22] en_minuscule [8] trier_entrees
|
||||
[2] compter_mots_ligne [13] est_lettre
|
||||
[21] construire_rapport [12] est_mot_vide
|
||||
@@ -0,0 +1,290 @@
|
||||
Flat profile:
|
||||
|
||||
Each sample counts as 0.01 seconds.
|
||||
% cumulative self self total
|
||||
time seconds seconds calls ms/call ms/call name
|
||||
33.48 0.78 0.78 36009819 0.00 0.00 longueur
|
||||
32.62 1.54 0.76 308701874 0.00 0.00 egales
|
||||
12.02 1.82 0.28 150182 0.00 0.01 chercher_mot
|
||||
6.44 1.97 0.15 12172087 0.00 0.00 comparer
|
||||
4.72 2.08 0.11 1 110.00 280.00 trier_entrees
|
||||
3.86 2.17 0.09 _init
|
||||
3.00 2.24 0.07 5867 0.01 0.14 longueur_moyenne
|
||||
1.29 2.27 0.03 32667 0.00 0.00 copier
|
||||
0.86 2.29 0.02 17202045 0.00 0.00 doit_echanger
|
||||
0.43 2.30 0.01 250000 0.00 0.00 est_mot_vide
|
||||
0.43 2.31 0.01 21746 0.00 0.05 compter_mots_ligne
|
||||
0.43 2.32 0.01 1 10.00 10.00 decouper_lignes
|
||||
0.43 2.33 0.01 1 10.00 10.00 generer_texte
|
||||
0.00 2.33 0.00 5297256 0.00 0.00 est_lettre
|
||||
0.00 2.33 0.00 1266663 0.00 0.00 en_minuscule
|
||||
0.00 2.33 0.00 928117 0.00 0.00 alea
|
||||
0.00 2.33 0.00 150182 0.00 0.01 compter_mot
|
||||
0.00 2.33 0.00 26801 0.00 0.00 ajouter
|
||||
0.00 2.33 0.00 21746 0.00 0.00 normaliser_ligne
|
||||
0.00 2.33 0.00 1 0.00 0.00 analyser_bigrammes
|
||||
0.00 2.33 0.00 1 0.00 5.52 construire_rapport
|
||||
0.00 2.33 0.00 1 0.00 815.46 ecart_type_longueur
|
||||
0.00 2.33 0.00 1 0.00 0.00 empreinte
|
||||
0.00 2.33 0.00 1 0.00 19.68 generer_vocabulaire
|
||||
0.00 2.33 0.00 1 0.00 0.00 racine
|
||||
|
||||
% the percentage of the total running time of the
|
||||
time program used by this function.
|
||||
|
||||
cumulative a running sum of the number of seconds accounted
|
||||
seconds for by this function and those listed above it.
|
||||
|
||||
self the number of seconds accounted for by this
|
||||
seconds function alone. This is the major sort for this
|
||||
listing.
|
||||
|
||||
calls the number of times this function was invoked, if
|
||||
this function is profiled, else blank.
|
||||
|
||||
self the average number of milliseconds spent in this
|
||||
ms/call function per call, if this function is profiled,
|
||||
else blank.
|
||||
|
||||
total the average number of milliseconds spent in this
|
||||
ms/call function and its descendents per call, if this
|
||||
function is profiled, else blank.
|
||||
|
||||
name the name of the function. This is the minor sort
|
||||
for this listing. The index shows the location of
|
||||
the function in the gprof listing. If the index is
|
||||
in parenthesis it shows where it would appear in
|
||||
the gprof listing if it were to be printed.
|
||||
|
||||
Copyright (C) 2012-2026 Free Software Foundation, Inc.
|
||||
|
||||
Copying and distribution of this file, with or without modification,
|
||||
are permitted in any medium without royalty provided the copyright
|
||||
notice and this notice are preserved.
|
||||
|
||||
Call graph (explanation follows)
|
||||
|
||||
|
||||
granularity: each sample hit covers 4 byte(s) for 0.43% of 2.33 seconds
|
||||
|
||||
index % time self children called name
|
||||
<spontaneous>
|
||||
[1] 96.1 0.00 2.24 main [1]
|
||||
0.01 1.06 21746/21746 compter_mots_ligne [2]
|
||||
0.00 0.82 1/1 ecart_type_longueur [6]
|
||||
0.11 0.17 1/1 trier_entrees [9]
|
||||
0.00 0.03 21746/21746 normaliser_ligne [14]
|
||||
0.00 0.02 1/1 generer_vocabulaire [17]
|
||||
0.01 0.00 1/1 generer_texte [19]
|
||||
0.01 0.00 1/1 decouper_lignes [18]
|
||||
0.00 0.01 1/1 construire_rapport [20]
|
||||
0.00 0.00 1/5867 longueur_moyenne [5]
|
||||
0.00 0.00 1/1 racine [26]
|
||||
0.00 0.00 1/1 analyser_bigrammes [24]
|
||||
0.00 0.00 1/1 empreinte [25]
|
||||
-----------------------------------------------
|
||||
0.01 1.06 21746/21746 main [1]
|
||||
[2] 45.7 0.01 1.06 21746 compter_mots_ligne [2]
|
||||
0.00 1.02 150182/150182 compter_mot [3]
|
||||
0.01 0.03 250000/250000 est_mot_vide [13]
|
||||
-----------------------------------------------
|
||||
0.00 1.02 150182/150182 compter_mots_ligne [2]
|
||||
[3] 43.6 0.00 1.02 150182 compter_mot [3]
|
||||
0.28 0.73 150182/150182 chercher_mot [4]
|
||||
0.01 0.00 5866/32667 copier [15]
|
||||
-----------------------------------------------
|
||||
0.28 0.73 150182/150182 compter_mot [3]
|
||||
[4] 43.4 0.28 0.73 150182 chercher_mot [4]
|
||||
0.73 0.00 296656203/308701874 egales [8]
|
||||
-----------------------------------------------
|
||||
0.00 0.00 1/5867 main [1]
|
||||
0.07 0.75 5866/5867 ecart_type_longueur [6]
|
||||
[5] 35.0 0.07 0.75 5867 longueur_moyenne [5]
|
||||
0.75 0.00 34415822/36009819 longueur [7]
|
||||
-----------------------------------------------
|
||||
0.00 0.82 1/1 main [1]
|
||||
[6] 35.0 0.00 0.82 1 ecart_type_longueur [6]
|
||||
0.07 0.75 5866/5867 longueur_moyenne [5]
|
||||
0.00 0.00 5866/36009819 longueur [7]
|
||||
-----------------------------------------------
|
||||
0.00 0.00 5866/36009819 ecart_type_longueur [6]
|
||||
0.00 0.00 26801/36009819 ajouter [16]
|
||||
0.03 0.00 1561330/36009819 normaliser_ligne [14]
|
||||
0.75 0.00 34415822/36009819 longueur_moyenne [5]
|
||||
[7] 33.5 0.78 0.00 36009819 longueur [7]
|
||||
-----------------------------------------------
|
||||
0.03 0.00 12045671/308701874 est_mot_vide [13]
|
||||
0.73 0.00 296656203/308701874 chercher_mot [4]
|
||||
[8] 32.6 0.76 0.00 308701874 egales [8]
|
||||
-----------------------------------------------
|
||||
0.11 0.17 1/1 main [1]
|
||||
[9] 12.0 0.11 0.17 1 trier_entrees [9]
|
||||
0.02 0.15 17202045/17202045 doit_echanger [10]
|
||||
-----------------------------------------------
|
||||
0.02 0.15 17202045/17202045 trier_entrees [9]
|
||||
[10] 7.3 0.02 0.15 17202045 doit_echanger [10]
|
||||
0.15 0.00 12172087/12172087 comparer [11]
|
||||
-----------------------------------------------
|
||||
0.15 0.00 12172087/12172087 doit_echanger [10]
|
||||
[11] 6.4 0.15 0.00 12172087 comparer [11]
|
||||
-----------------------------------------------
|
||||
<spontaneous>
|
||||
[12] 3.9 0.09 0.00 _init [12]
|
||||
-----------------------------------------------
|
||||
0.01 0.03 250000/250000 compter_mots_ligne [2]
|
||||
[13] 1.7 0.01 0.03 250000 est_mot_vide [13]
|
||||
0.03 0.00 12045671/308701874 egales [8]
|
||||
-----------------------------------------------
|
||||
0.00 0.03 21746/21746 main [1]
|
||||
[14] 1.5 0.00 0.03 21746 normaliser_ligne [14]
|
||||
0.03 0.00 1561330/36009819 longueur [7]
|
||||
0.00 0.00 1539584/5297256 est_lettre [21]
|
||||
0.00 0.00 1266663/1266663 en_minuscule [22]
|
||||
-----------------------------------------------
|
||||
0.01 0.00 5866/32667 compter_mot [3]
|
||||
0.02 0.00 26801/32667 ajouter [16]
|
||||
[15] 1.3 0.03 0.00 32667 copier [15]
|
||||
-----------------------------------------------
|
||||
0.00 0.01 5867/26801 construire_rapport [20]
|
||||
0.00 0.02 20934/26801 generer_vocabulaire [17]
|
||||
[16] 1.1 0.00 0.03 26801 ajouter [16]
|
||||
0.02 0.00 26801/32667 copier [15]
|
||||
0.00 0.00 26801/36009819 longueur [7]
|
||||
-----------------------------------------------
|
||||
0.00 0.02 1/1 main [1]
|
||||
[17] 0.8 0.00 0.02 1 generer_vocabulaire [17]
|
||||
0.00 0.02 20934/26801 ajouter [16]
|
||||
0.00 0.00 27934/928117 alea [23]
|
||||
-----------------------------------------------
|
||||
0.01 0.00 1/1 main [1]
|
||||
[18] 0.4 0.01 0.00 1 decouper_lignes [18]
|
||||
-----------------------------------------------
|
||||
0.01 0.00 1/1 main [1]
|
||||
[19] 0.4 0.01 0.00 1 generer_texte [19]
|
||||
0.00 0.00 900183/928117 alea [23]
|
||||
-----------------------------------------------
|
||||
0.00 0.01 1/1 main [1]
|
||||
[20] 0.2 0.00 0.01 1 construire_rapport [20]
|
||||
0.00 0.01 5867/26801 ajouter [16]
|
||||
-----------------------------------------------
|
||||
0.00 0.00 1539584/5297256 normaliser_ligne [14]
|
||||
0.00 0.00 3757672/5297256 analyser_bigrammes [24]
|
||||
[21] 0.0 0.00 0.00 5297256 est_lettre [21]
|
||||
-----------------------------------------------
|
||||
0.00 0.00 1266663/1266663 normaliser_ligne [14]
|
||||
[22] 0.0 0.00 0.00 1266663 en_minuscule [22]
|
||||
-----------------------------------------------
|
||||
0.00 0.00 27934/928117 generer_vocabulaire [17]
|
||||
0.00 0.00 900183/928117 generer_texte [19]
|
||||
[23] 0.0 0.00 0.00 928117 alea [23]
|
||||
-----------------------------------------------
|
||||
0.00 0.00 1/1 main [1]
|
||||
[24] 0.0 0.00 0.00 1 analyser_bigrammes [24]
|
||||
0.00 0.00 3757672/5297256 est_lettre [21]
|
||||
-----------------------------------------------
|
||||
0.00 0.00 1/1 main [1]
|
||||
[25] 0.0 0.00 0.00 1 empreinte [25]
|
||||
-----------------------------------------------
|
||||
0.00 0.00 1/1 main [1]
|
||||
[26] 0.0 0.00 0.00 1 racine [26]
|
||||
-----------------------------------------------
|
||||
|
||||
This table describes the call tree of the program, and was sorted by
|
||||
the total amount of time spent in each function and its children.
|
||||
|
||||
Each entry in this table consists of several lines. The line with the
|
||||
index number at the left hand margin lists the current function.
|
||||
The lines above it list the functions that called this function,
|
||||
and the lines below it list the functions this one called.
|
||||
This line lists:
|
||||
index A unique number given to each element of the table.
|
||||
Index numbers are sorted numerically.
|
||||
The index number is printed next to every function name so
|
||||
it is easier to look up where the function is in the table.
|
||||
|
||||
% time This is the percentage of the `total' time that was spent
|
||||
in this function and its children. Note that due to
|
||||
different viewpoints, functions excluded by options, etc,
|
||||
these numbers will NOT add up to 100%.
|
||||
|
||||
self This is the total amount of time spent in this function.
|
||||
|
||||
children This is the total amount of time propagated into this
|
||||
function by its children.
|
||||
|
||||
called This is the number of times the function was called.
|
||||
If the function called itself recursively, the number
|
||||
only includes non-recursive calls, and is followed by
|
||||
a `+' and the number of recursive calls.
|
||||
|
||||
name The name of the current function. The index number is
|
||||
printed after it. If the function is a member of a
|
||||
cycle, the cycle number is printed between the
|
||||
function's name and the index number.
|
||||
|
||||
|
||||
For the function's parents, the fields have the following meanings:
|
||||
|
||||
self This is the amount of time that was propagated directly
|
||||
from the function into this parent.
|
||||
|
||||
children This is the amount of time that was propagated from
|
||||
the function's children into this parent.
|
||||
|
||||
called This is the number of times this parent called the
|
||||
function `/' the total number of times the function
|
||||
was called. Recursive calls to the function are not
|
||||
included in the number after the `/'.
|
||||
|
||||
name This is the name of the parent. The parent's index
|
||||
number is printed after it. If the parent is a
|
||||
member of a cycle, the cycle number is printed between
|
||||
the name and the index number.
|
||||
|
||||
If the parents of the function cannot be determined, the word
|
||||
`<spontaneous>' is printed in the `name' field, and all the other
|
||||
fields are blank.
|
||||
|
||||
For the function's children, the fields have the following meanings:
|
||||
|
||||
self This is the amount of time that was propagated directly
|
||||
from the child into the function.
|
||||
|
||||
children This is the amount of time that was propagated from the
|
||||
child's children to the function.
|
||||
|
||||
called This is the number of times the function called
|
||||
this child `/' the total number of times the child
|
||||
was called. Recursive calls by the child are not
|
||||
listed in the number after the `/'.
|
||||
|
||||
name This is the name of the child. The child's index
|
||||
number is printed after it. If the child is a
|
||||
member of a cycle, the cycle number is printed
|
||||
between the name and the index number.
|
||||
|
||||
If there are any cycles (circles) in the call graph, there is an
|
||||
entry for the cycle-as-a-whole. This entry shows who called the
|
||||
cycle (as parents) and the members of the cycle (as children.)
|
||||
The `+' recursive calls entry shows the number of function calls that
|
||||
were internal to the cycle, and the calls entry for each member shows,
|
||||
for that member, how many times it was called from other members of
|
||||
the cycle.
|
||||
|
||||
Copyright (C) 2012-2026 Free Software Foundation, Inc.
|
||||
|
||||
Copying and distribution of this file, with or without modification,
|
||||
are permitted in any medium without royalty provided the copyright
|
||||
notice and this notice are preserved.
|
||||
|
||||
Index by function name
|
||||
|
||||
[12] _init [15] copier [19] generer_texte
|
||||
[16] ajouter [18] decouper_lignes [17] generer_vocabulaire
|
||||
[23] alea [10] doit_echanger [7] longueur
|
||||
[24] analyser_bigrammes [6] ecart_type_longueur [5] longueur_moyenne
|
||||
[4] chercher_mot [8] egales [14] normaliser_ligne
|
||||
[11] comparer [25] empreinte [26] racine
|
||||
[3] compter_mot [22] en_minuscule [9] trier_entrees
|
||||
[2] compter_mots_ligne [21] est_lettre
|
||||
[20] construire_rapport [13] est_mot_vide
|
||||
+5867
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user