This commit is contained in:
Come THURET 2024-09-03 11:06:34 +02:00
parent 6df1303c6d
commit 0f2871ce3e

View File

@ -24,11 +24,12 @@ Each sample counts as 0.01 seconds.
0.00 0.00 0.00 2 0.00 0.00 print_student_array
0.00 0.00 0.00 1 0.00 0.00 generate_grades
0.00 0.00 0.00 1 0.00 0.00 generate_ranks
0.00 0.00 0.00 1 0.00 0.00 sort_students
0.00 0.00 0.00 1 0.00 0.00 sort_students```
par exemple on peut voir que la fonction bubblesort a été appelée 30 fois et que la fonction find_rank_student a été appelée 25 fois.
exemple du call graph :
```
Call graph (explanation follows)
@ -74,12 +75,13 @@ par exemple on peut voir que la fonction bubblesort a été appelée 30 fois, 5
la fonction find_rank_student a été appelée 25 fois par sort_students et à chaque fois elle appelle la fonction bubblesort.
on a relancé le scénario en changeant les paramètres de la commande :
./student_rank 1000 1000 0
```./student_rank 1000 1000 0```
on a relancé gprof avec la commande suivante :
gprof ./student_rank
```gprof ./student_rank```
un apperçu du résultat est donné ci-dessous :
```
Flat profile:
Each sample counts as 0.01 seconds.
@ -92,11 +94,13 @@ Each sample counts as 0.01 seconds.
0.00 6.15 0.00 2 0.00 0.00 free_array
0.00 6.15 0.00 1 0.00 0.00 generate_grades
0.00 6.15 0.00 1 0.00 0.00 generate_ranks
```
en comparaison avec le premier scénario, on peut voir que la fonction bubblesort a été appelée 1001000 fois et que la fonction find_rank_student a été appelée 1000000 fois.
on peut voir aussi que le programme a passé 6.15 secondes à exécuter alors que dans le premier scénario il n'a pas accumulé de temps.
exemple du call graph :
```
Call graph (explanation follows)
@ -135,4 +139,5 @@ index % time self children called name
-----------------------------------------------
0.00 0.00 1/1 main [2]
[8] 0.0 0.00 0.00 1 generate_ranks [8]
-----------------------------------------------
-----------------------------------------------
```